【SQL】NULLか非NULLかの判定を行うIS NULL、IS NOT NULLの使い方!わかりやすく解説する!

Web技術
スポンサーリンク

SQLでnullかどうかの判定ってどうやってするの?

IS NULL、IS NOT NULLってどうやって使うの?

わかりやすく教えてほしい!

こういった疑問にこたえます。

この記事を読めば
  • SQLでNULLかどうかの判定ができるようになる
  • IS NULL、IS NOT NULLの使い方がわかるようになる

エンジニアの僕がわかりやすく解説します。

IS NULLの使い方

IS NULLはある列がNULLの行を選択するときに使う述語です。

NULLを選択したい場合は「=」が使えないのでIS NULLを使います。

例えば、次のようなshohinテーブルがあったとします。

shohin_meikakaku
鉛筆100
フライパン1500
牛肉
Tシャツ1200
shohinテーブル

このshohinテーブルのkakakuがNULLの行を選択したい場合、SQLは次のようになります。

SELECT * FROM shohin WHERE kakaku IS NULL;

実行結果

shohin_meikakaku
牛肉
実行結果

このように、kakakuがNULLである牛肉のレコードだけ取得することができました。

IS NOT NULLの使い方

IS NOT NULLはある列が非NULLの行を選択するときに使う述語です。

非NULLを選択したい場合は「!=」が使えないのでIS NOT NULLを使います。

先ほどのshohinテーブルのkakakuがNULLではないレコードを選択したい場合、SQLは次のようになります。

SELECT * FROM shohin WHERE kakaku IS NOT NULL;

実行結果

shohin_meikakaku
鉛筆100
フライパン1500
Tシャツ1200
実行結果

このようにkakakuがNULLでないレコードだけ取得することができます。

IS NULL、IS NOT NULLの使い方まとめ

解説の内容をまとめます。

  • IS NULLはある列がNULLの行を選択するときに使う述語
  • IS NOT NULLはある列が非NULLの行を選択するときに使う述語
  • NULLを判定するのに「=」や「!=」は使えない

以上、お疲れ様でした。

コメント

タイトルとURLをコピーしました