IPA過去問ドリル

平成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 (注:本サイトでは原問題の表を文字表記に変換しています)

出典:平成23年度 秋期 応用情報技術者試験 午前 問29

正解:イ

解説

価格設定年月日 < '2011-12-01' の条件では,NULL値は比較の対象にならず結果に含まれません。S001(2009-12-31)とS002(2008-03-31)がこの条件を満たし,S003はNULLのため除外,S004(2011-12-01)は条件を満たさないため,該当するのは2件です。

選択肢ごとの解説

  • 誤り。条件を満たす行を1件少なく数えた場合などに得られる値です。
  • 正しい。S001とS002の2件が条件を満たします。
  • 誤り。NULLの行(S003)を条件に合致すると誤って含めた場合などの値です。
  • 誤り。4件全てが条件を満たすと誤解した場合の値で,NULLとの比較結果や日付条件の判定を誤っています。
応用情報技術者の過去問を演習モードで解く