MySQLでNULLを0に型キャストする
IFNULL()関数を使用して、NULLを0に型キャストできます。構文は次のとおりです-
select ifnull(yourColumnName) as anyVariableName from yourTableName;
上記の概念を理解するために、最初にテーブルを作成しましょう-
mysql> create table TypecastDemo −> ( −> AccountNumber int −> ); Query OK, 0 rows affected (0.84 sec)
NULL値のレコードをいくつか挿入してみましょう。レコードを挿入するためのクエリは次のとおりです-
mysql> insert into TypecastDemo values(NULL); Query OK, 1 row affected (0.13 sec) mysql> insert into TypecastDemo values(1234); Query OK, 1 row affected (0.14 sec) mysql> insert into TypecastDemo values(9876); Query OK, 1 row affected (0.14 sec) mysql> insert into TypecastDemo values(6666); Query OK, 1 row affected (0.16 sec) mysql> insert into TypecastDemo values(NULL); Query OK, 1 row affected (0.27 sec) mysql> insert into TypecastDemo values(NULL); Query OK, 1 row affected (0.36 sec) mysql> insert into TypecastDemo values(3214); Query OK, 1 row affected (0.34 sec)
これで、selectステートメントを使用してすべてのレコードを表示できます。クエリは次のとおりです-
mysql> select *from TypecastDemo;
以下は出力です-
+---------------+ | AccountNumber | +---------------+ | NULL | | 1234 | | 9876 | | 6666 | | NULL | | NULL | | 3214 | +---------------+ 7 rows in set (0.00 sec)
上記の構文を適用して、NULLを0に型キャストします。クエリは次のとおりです-
mysql> select ifnull(AccountNumber,0) as TypeCastNullToZero from TypecastDemo;
以下は出力です-
+--------------------+ | TypeCastNullToZero | +--------------------+ | 0 | | 1234 | | 9876 | | 6666 | | 0 | | 0 | | 3214 | +--------------------+ 7 rows in set (0.00 sec)
複数の列が必要な場合は、COALESCEを使用できます。
-
MySQLのNULL値の場合は1を表示します
まずテーブルを作成しましょう- mysql> create table DemoTable1963 ( Counter int ); Query OK, 0 rows affected (0.00 sec) 挿入コマンド-を使用して、テーブルにいくつかのレコードを挿入します mysql> insert into DemoTable1963 values(20); Query OK, 1 row affected (0.00 sec) mysql> insert into DemoTable1963
-
MySQLでWHEREINnullを選択しますか?
以下は構文です- select yourColumnName1, yourColumnName2, yourColumnName3, . . . N from yourTableName where yourValue in(yourColumnName1,yourColumnName2) or yourColumnName1 is NULL; テーブルを作成しましょう- mysql> create table demo60 −> ( −> id int not null auto_increment primary key, −>