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

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

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

名前: ____________________   日付: ____________

1.やさしい

実体関連(ER)図は何に使いますか?

  1. Aクエリがどのように実行されるかを示す
  2. Bデータベースのユーザーを一覧にする
  3. Cデータベースの性能を測定する
  4. Dデータベースを設計するときに、実体、その属性、関連をモデル化する
2.やさしい

CROSS JOIN は何を返しますか?

  1. A2 つのテーブルの行のあらゆる組み合わせ
  2. B一致しない行だけ
  3. C共通のキー列で一致する行だけ
  4. D最初のテーブルの行だけ
3.やさしい

CREATE、ALTER、DROP などの文は SQL のどの部分に属しますか?

  1. Aデータ制御言語(DCL)
  2. Bトランザクション制御言語(TCL)
  3. Cデータ定義言語(DDL)
  4. Dデータ操作言語(DML)
4.ふつう

列にインデックスを作成するのはなぜですか?

  1. Aその列に対する検索や結合を高速化するため
  2. Bそれらの列に対する挿入と更新を高速化するため
  3. Cディスク容量を節約するため
  4. DNULL 値を防ぐため
5.ふつう

各部署の最高給与を返すクエリはどれですか?

  1. ASELECT dept, MAX(salary) FROM emp ORDER BY dept
  2. BSELECT dept, salary FROM emp WHERE salary = MAX(salary)
  3. CSELECT dept, MAX(salary) FROM emp GROUP BY dept
  4. DSELECT MAX(dept), salary FROM emp GROUP BY salary
6.ふつう

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

  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.むずかしい

テーブル employee(emp_id, dept_id, dept_name) のキーは emp_id で、dept_id → dept_name です。正しい記述はどれですか?

  1. A2NF ではない
  2. B2NF だが 3NF ではない
  3. C1NF ではない
  4. DBCNF であり、したがって 3NF である

解答

  1. 1. D · データベースを設計するときに、実体、その属性、関連をモデル化する
  2. 2. A · 2 つのテーブルの行のあらゆる組み合わせ
  3. 3. C · データ定義言語(DDL)
  4. 4. A · その列に対する検索や結合を高速化するため
  5. 5. C · SELECT dept, MAX(salary) FROM emp GROUP BY dept
  6. 6. D · 仮想テーブルのように振る舞う保存されたクエリ
  7. 7. C · 列に関数を適用すると、単純なインデックス範囲検索ができなくなるから
  8. 8. B · 2NF だが 3NF ではない

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