平成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〜4 で解答 → 次の問題 ← 前の問題
正解と解説を見る
解答する前に解説を開いたので、この問題は「見て解いた」として記録します(正解数には入りません)。
正解:イ
WHERE句の条件「価格設定年月日 < '2011-12-01'」を各行に当てはめます。
- S001:2009-12-31 < 2011-12-01 → 真
- S002:2008-03-31 < 2011-12-01 → 真
- S003:NULL との比較は「不明(UNKNOWN)」となり,真にならないので検索されません。
- S004:2011-12-01 < 2011-12-01 → 偽(等しいので「より小さい」を満たさない)
検索結果は S001,S002 の 2行 です。
-
ア: 1
誤り。条件を満たす行は2行あります。 -
イ: 2
正しい。S001とS002の2行が検索されます。 -
ウ: 3
誤り。NULLの行(S003)を条件を満たすものとして数えた場合などの値です。NULLとの比較結果は真になりません。 -
エ: 4
誤り。S004は「<」の条件を満たさず,S003はNULLのため検索されません。
答え
イ: 2
出典:平成23年度 秋期 応用情報技術者試験 午前 問29