平成23年 秋期 応用情報技術者 午前 問29

価格設定年月日にNULLを含む“商品”表に対して、次の問合せを行った。
この検索結果の行数は幾つか。

SELECT 商品コード FROM 商品 WHERE 価格設定年月日 < '2011-12-01'

商品
商品コード 商品名 価格 価格設定年月日
S001 ボールペン 150 2009-12-31
S002 消しゴム 80 2008-03-31
S003 蛍光ペン 0 NULL
S004 定規 300 2011-12-01

 ア  1  イ  2  ウ  3  エ  4


答え イ


解説
行を選択する条件文は『価格設定年月日 < '2011-12-01'』であり、

  • S001の価格設定年月日の'2009-12-31'は'2011-12-01'より小さいので選択される。
  • S002の価格設定年月日の'2008-02-31'は'2011-12-01'より小さいので選択される。
  • S003の価格設定年月日の'NULL'と'2011-12-01'の比較結果はNULLになるので選択されない。
  • S004の価格設定年月日の'2011-12-01'は'2011-12-01'より大きいので選択されない。
したがって、検索結果の行数は2行(イ)になる。


キーワード
・SQLのNULL値

キーワードの解説
  • SQLのNULL値
    SQLにおいてNULLは特殊な値であり、“データが存在しない”という意味で、比較を行うとその結果は必ず「偽」(false)になります。
    また、四則演算にNULLがあると結果は「NULL」になります。

もっと、「SQLのNULL値」について調べてみよう。

戻る 一覧へ 次へ