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

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

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

名前: ____________________   日付: ____________

1.やさしい

外部キー(foreign key)とは次のうちどれですか?

  1. A外国のユーザーが使うキー
  2. Bテーブルのすべての行にわたって値が一意でなければならない列
  3. C常に暗号化されているキー
  4. D別のテーブルの主キーを参照する列
2.やさしい

クエリの結果を並べ替えるキーワードはどれですか?

  1. AARRANGE
  2. BSORT
  3. CORDER BY
  4. DGROUP BY
3.やさしい

クエリで GROUP BY は何をしますか?

  1. A結果の行をアルファベット順に並べ替える
  2. BNULL 値を含む行を削除する
  3. C同じ値を持つ行をグループにまとめ、集約がグループごとに計算されるようにする
  4. D2 つのテーブルを共通の列で結合する
4.ふつう

学生は多くの科目を履修でき、科目には多くの学生がいます。これはテーブルでどのようにモデル化しますか?

  1. A学生と科目を 1 つのテーブルにまとめて
  2. Bstudents テーブルに courses を指す外部キー列 course_id を置いて
  3. C学生と科目の両方への外部キーを持つ中間テーブルで
  4. D1 つの列に科目 id のリストを保存して
5.ふつう

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

  1. A0
  2. B空文字列
  3. Cエラー
  4. DNULL
6.ふつう

共通テーブル式(WITH name AS (...))は何を提供しますか?

  1. A1 つの文の中で使える、名前付きの一時的な結果
  2. B削除されるまでディスクに保存され続ける恒久的なテーブル
  3. C列に対するインデックス
  4. D新しいデータベースユーザー
7.むずかしい

SELECT name, dept, AVG(salary) OVER (PARTITION BY dept) FROM emp は何を返しますか?

  1. A部署の平均より多く稼ぐ従業員だけ
  2. Bname が GROUP BY にないためエラー
  3. Cすべての従業員の行と、その部署の平均給与
  4. D部署ごとに 1 行と、その平均給与
8.むずかしい

本番環境のクエリで NATURAL JOIN が危険とされるのはなぜですか?

  1. A常に直積を返すから
  2. Bどのデータベースでもサポートされていないから
  3. C同じ名前のすべての列で結合するため、新しい列が追加されると結果が知らないうちに変わりうるから
  4. D主キーと外部キーを無視し、NULL の行だけを残すから

解答

  1. 1. D · 別のテーブルの主キーを参照する列
  2. 2. C · ORDER BY
  3. 3. C · 同じ値を持つ行をグループにまとめ、集約がグループごとに計算されるようにする
  4. 4. C · 学生と科目の両方への外部キーを持つ中間テーブルで
  5. 5. D · NULL
  6. 6. A · 1 つの文の中で使える、名前付きの一時的な結果
  7. 7. C · すべての従業員の行と、その部署の平均給与
  8. 8. C · 同じ名前のすべての列で結合するため、新しい列が追加されると結果が知らないうちに変わりうるから

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