LoginSignup
21
15

More than 5 years have passed since last update.

SQLで特定の文字以外の条件でNULLのレコードが取得されない

Posted at

DB2で特定のカラムから特定の文字以外を取得する場合、
NULLのレコードが取得されずにハマったので備忘録

下記の様なテーブルがあった場合


col1
------- 
A
null
B
C

A以外を取得する場合

 SELECT col1 FROM table1 WHERE col1 <> 'A' 

上記のsqlを実行した結果、col1がBとCのレコードが取得されたが、nullのレコードは取得されない。

nullのレコードも必要な場合は条件に IS NULL も付ける必要がある。

 SELECT col1 FROM table1 WHERE col1 <> 'A' OR col1 IS NULL

in句を使用する場合も同様に IS NULL を付ける必要がある。

 SELECT col1 FROM table1 WHERE col1 NOT IN ('A','B') OR col1 IS NULL
21
15
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
21
15