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

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

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

名前: ____________________   日付: ____________

1.やさしい

WHERE 句で簡単な文字列のパターンマッチに使う演算子はどれですか?

  1. ASIMILAR
  2. BCONTAINS
  3. CLIKE
  4. DMATCH
2.やさしい

SQL において NULL は何を表しますか?

  1. A数値列におけるゼロという数
  2. BBoolean の false
  3. C欠けている値または不明な値
  4. D空文字列
3.やさしい

代理キー(サロゲートキー)とは何ですか?

  1. A別のテーブルを参照するキー
  2. Bビューでだけ使われるキー
  3. C自動採番の id のように、業務上の意味を持たない人工的な識別子
  4. Dメールアドレスのような実世界のデータから作ったキー
4.ふつう

HAVING について正しい記述はどれですか?

  1. A集約関数を使ってグループを絞り込むことができる
  2. BSELECT 文の中で WHERE より前に書かなければならない
  3. C結果を並べ替える
  4. DGROUP BY と一緒には使えない
5.ふつう

2 つの SELECT クエリの間で使う INTERSECT は何を返しますか?

  1. A結果の直積
  2. B1 つ目の結果にあって 2 つ目にない行
  3. C両方の結果のすべての行
  4. D両方の結果に現れる行
6.ふつう

あるテーブルは、注文のすべての行に顧客の住所を保存しています。ある行の住所を変更し、ほかの行は変更しないのは何の例ですか?

  1. A削除時異常
  2. Bファントムリード
  3. C更新時異常
  4. D挿入時異常
7.むずかしい

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

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

トランザクション T1 は行 A をロックして行 B を待ち、T2 は行 B をロックして行 A を待っています。一般的な DBMS はどうしますか?

  1. Aデッドロックを検出し、一方のトランザクションを犠牲として中止する
  2. B両方のトランザクションを同時にコミットする
  3. C一方がふつうにコミットするまで、両方のトランザクションを待たせる
  4. D2 つのトランザクションを 1 つにまとめる

解答

  1. 1. C · LIKE
  2. 2. C · 欠けている値または不明な値
  3. 3. C · 自動採番の id のように、業務上の意味を持たない人工的な識別子
  4. 4. A · 集約関数を使ってグループを絞り込むことができる
  5. 5. D · 両方の結果に現れる行
  6. 6. C · 更新時異常
  7. 7. A · 列に関数を適用すると、単純なインデックス範囲検索ができなくなるから
  8. 8. A · デッドロックを検出し、一方のトランザクションを犠牲として中止する

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