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

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

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

名前: ____________________   日付: ____________

1.やさしい

LIKE のパターンで、ワイルドカード % は何を表しますか?

  1. A0 文字以上の任意の文字列
  2. B文字列の終わり
  3. C文字列のその位置にあるちょうど 1 文字
  4. D任意の 1 桁の数字
2.やさしい

テーブルからデータを取得する SQL 文はどれですか?

  1. ASELECT
  2. BINSERT
  3. CUPDATE
  4. DCREATE
3.やさしい

行数を数える集約関数はどれですか?

  1. ASUM
  2. BAVG
  3. CMAX
  4. DCOUNT
4.ふつう

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

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

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

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

SELECT COALESCE(phone, 'unknown') FROM customers は、phone が NULL の顧客について何を返しますか?

  1. Aエラー
  2. BNULL
  3. C空文字列
  4. D'unknown'
7.むずかしい

次のクエリは何を返しますか:SELECT name FROM students WHERE grade > (SELECT AVG(grade) FROM students)

  1. A最高点の学生のみ
  2. B成績が平均点を上回る学生
  3. CWHERE ではサブクエリが使えないためエラー
  4. D全学生の平均点
8.むずかしい

SELECT day, SUM(amount) OVER (ORDER BY day) FROM sales は何を計算しますか?

  1. Aその日の合計だけを持つ、1 日 1 行
  2. Bday の順に並べた amount の累計
  3. C1 日あたりの平均 amount
  4. Dすべての行に全 amount の合計

解答

  1. 1. A · 0 文字以上の任意の文字列
  2. 2. A · SELECT
  3. 3. D · COUNT
  4. 4. D · 学生と科目の両方への外部キーを持つ中間テーブルで
  5. 5. A · SELECT customer_id, COUNT(*) FROM orders GROUP BY customer_id
  6. 6. D · 'unknown'
  7. 7. B · 成績が平均点を上回る学生
  8. 8. B · day の順に並べた amount の累計

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