MySQLで行のNULLの数を数える方法は?
MySQLのISNULL()を使用します。まずテーブルを作成しましょう-
mysql> create table DemoTable -> ( -> Number1 int, -> Number2 int -> ); Query OK, 0 rows affected (0.59 sec)
挿入コマンド-
を使用して、テーブルにいくつかのレコードを挿入しますmysql> insert into DemoTable values(10,NULL); Query OK, 1 row affected (0.17 sec) mysql> insert into DemoTable values(NULL,NULL); Query OK, 1 row affected (0.10 sec) mysql> insert into DemoTable values(29,98); Query OK, 1 row affected (0.14 sec) mysql> insert into DemoTable values(NULL,119); Query OK, 1 row affected (0.15 sec)
selectステートメントを使用してテーブルのすべてのレコードを表示します。
mysql> select *from DemoTable;
出力
これにより、次の出力が生成されます-
+---------+---------+ | Number1 | Number2 | +---------+---------+ | 10 | NULL | | NULL | NULL | | 29 | 98 | | NULL | 119 | +---------+---------+ 4 rows in set (0.00 sec)
以下は、行内のNULLの数をカウントするためのクエリです。
mysql> select Number1,Number2,isnull(Number1)+isnull(Number2) AS NumberofNULLS from DemoTable;
出力
これにより、次の出力が生成されます-
+---------+---------+--------------+ | Number1 | Number2 | NumberofNULLS| +---------+---------+--------------+ | 10 | NULL | 1 | | NULL | NULL | 2 | | 29 | 98 | 0 | | NULL | 119 | 1 | +---------+---------+--------------+ 4 rows in set (0.00 sec)
-
Javaを使用してMySQLテーブルの列数をカウントする
これには、ResultSetMetaDataを使用します。まずテーブルを作成しましょう- mysql> create table DemoTable -> ( -> StudentId int NOT NULL AUTO_INCREMENT PRIMARY KEY, -> StudentFirstName varchar(20), -> StudentLastName varchar(20) -> ); Query OK, 0 r
-
MySQLで「X日前」のタイムスタンプを持つ行を挿入するにはどうすればよいですか?
このような行を挿入するには、次の構文を使用します。ここでは、CURRENT_TIMESTAMP-を使用しています。 insert into yourTableName values(CURRENT_TIMESTAMP - INTERVAL ABS(RAND() * 100) DAY); 上記の構文を理解するために、テーブルを作成しましょう- mysql> create table DemoTable1983 ( DueDate timestamp ); Query OK, 0 rows affected (0