解答つきデータベースと SQLワークシート

無料で印刷できるデータベースと SQLのワークシート:やさしい問題から試験レベルまで 8 問、解答つき。印刷するか PDF で保存できます。

先生方へ: 授業で自由に印刷・コピーしてお使いいただけます。新しいワークシートごとに数値が変わり、専用の解答が付きます。授業ページに ExamProblems へのリンクを載せていただけると嬉しいです。

名前: ____________________   日付: ____________

1.やさしい

WHERE price BETWEEN 10 AND 20 はどの行を選びますか?

  1. Aprice が 10 から 20 の範囲外の行
  2. Bprice が 10 または 20 に等しい行だけ
  3. Cprice が 10 より大きく 20 より小さい行(10 と 20 は除く)
  4. Dprice が 10 から 20 まで(10 と 20 を含む)の行
2.やさしい

既存のテーブルに新しい列を追加する文はどれですか?

  1. ACREATE COLUMN
  2. BALTER TABLE
  3. CINSERT COLUMN
  4. DUPDATE TABLE
3.やさしい

INNER JOIN が返すのは次のうちどれですか?

  1. A左テーブルのすべての行。一致がない場合は NULL が入る
  2. B両方のテーブルで値が一致する行のみ
  3. C両方のテーブルのすべての行
  4. D一致しない行
4.ふつう

顧客ごとの注文数を返すクエリはどれですか?

  1. ASELECT DISTINCT COUNT(*) FROM orders
  2. BSELECT customer_id FROM orders WHERE COUNT(*) > 0
  3. CSELECT customer_id, COUNT(*) FROM orders GROUP BY customer_id
  4. DSELECT customer_id, COUNT(*) FROM orders ORDER BY customer_id
5.ふつう

SQL におけるビュー(view)とは次のうちどれですか?

  1. Aインデックスの一種
  2. Bディスク上のテーブルのコピー
  3. C仮想テーブルのように振る舞う保存されたクエリ
  4. Dテーブルを閲覧するためのデータベースクライアントの画面
6.ふつう

WHERE 句に一致する行がないとき、SELECT SUM(amount) FROM orders は何を返しますか?

  1. ANULL
  2. Bエラー
  3. C空文字列
  4. D0
7.むずかしい

WHERE YEAR(order_date) = 2025 を含むクエリが order_date のインデックスを使わないことがあるのはなぜですか?

  1. A列に関数を適用すると、単純なインデックス範囲検索ができなくなるから
  2. Border_date のインデックスは ORDER BY 句にしか使われず、WHERE には決して使われないから
  3. CYEAR は有効な SQL ではないから
  4. Dインデックスは日付では決して機能しないから
8.むずかしい

x が NULL で y = 1 です。条件 (x > 5 OR y = 1) の値は何ですか?

  1. ATRUE
  2. BFALSE
  3. CNULL なので、その行は常に除外される
  4. DUNKNOWN

解答

  1. 1. D · price が 10 から 20 まで(10 と 20 を含む)の行
  2. 2. B · ALTER TABLE
  3. 3. B · 両方のテーブルで値が一致する行のみ
  4. 4. C · SELECT customer_id, COUNT(*) FROM orders GROUP BY customer_id
  5. 5. C · 仮想テーブルのように振る舞う保存されたクエリ
  6. 6. A · NULL
  7. 7. A · 列に関数を適用すると、単純なインデックス範囲検索ができなくなるから
  8. 8. A · TRUE

ステップごとの詳しい解答:このトピックは examproblems.com で練習できます。