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

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

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

名前: ____________________   日付: ____________

1.やさしい

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

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

給与が高い順から低い順に結果を並べ替えるにはどうしますか?

  1. AORDER BY salary DESC
  2. BSORT salary DOWN
  3. CORDER BY salary ASC
  4. DGROUP BY salary DESC
3.やさしい

すでに存在する行の値を変更する SQL 文はどれですか?

  1. AMODIFY
  2. BINSERT
  3. CREPLACE COLUMN
  4. DUPDATE
4.ふつう

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

  1. A左テーブルのすべての行と右テーブルの一致する行。一致しない部分は NULL になる
  2. B両方のテーブルの一致する行のみ
  3. Cどちらのテーブルでも一致しない行
  4. D右テーブルのすべての行のみ
5.ふつう

orders テーブルには 5 行あり、それぞれが既存の顧客を参照しています。customers テーブルは 3 行です。customer_id での INNER JOIN は何行を返しますか?

  1. A8
  2. B15
  3. C3
  4. D5
6.ふつう

EXCEPT(Oracle では MINUS)は何を返しますか?

  1. A1 つ目のクエリの行のうち、2 つ目に現れないもの
  2. B両方のクエリに現れる行
  3. C両方のクエリのすべての行(重複なし)
  4. D2 つ目のクエリの行のうち、1 つ目に現れないもの
7.むずかしい

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

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

相関サブクエリ(correlated subquery)とは次のうちどれですか?

  1. A外部キーで 2 つのテーブルを結合するサブクエリ
  2. B外側のクエリの前に 1 回だけ実行され、その結果がすべての行に対してキャッシュされるサブクエリ
  3. C外側のクエリの列を参照し、外側の行ごとに評価されるサブクエリ
  4. D集約関数だけを使うサブクエリ

解答

  1. 1. A · 自動採番の id のように、業務上の意味を持たない人工的な識別子
  2. 2. A · ORDER BY salary DESC
  3. 3. D · UPDATE
  4. 4. A · 左テーブルのすべての行と右テーブルの一致する行。一致しない部分は NULL になる
  5. 5. D · 5
  6. 6. A · 1 つ目のクエリの行のうち、2 つ目に現れないもの
  7. 7. B · デッドロックを検出し、一方のトランザクションを犠牲として中止する
  8. 8. C · 外側のクエリの列を参照し、外側の行ごとに評価されるサブクエリ

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