1.やさしい
LIKE のパターンで、ワイルドカード % は何を表しますか?
- A0 文字以上の任意の文字列
- B文字列の終わり
- C文字列のその位置にあるちょうど 1 文字
- D任意の 1 桁の数字
2.やさしい
テーブルからデータを取得する SQL 文はどれですか?
- ASELECT
- BINSERT
- CUPDATE
- DCREATE
3.やさしい
行数を数える集約関数はどれですか?
- ASUM
- BAVG
- CMAX
- DCOUNT
4.ふつう
学生は多くの科目を履修でき、科目には多くの学生がいます。これはテーブルでどのようにモデル化しますか?
- A学生と科目を 1 つのテーブルにまとめて
- Bstudents テーブルに courses を指す外部キー列 course_id を置いて
- C1 つの列に科目 id のリストを保存して
- D学生と科目の両方への外部キーを持つ中間テーブルで
5.ふつう
顧客ごとの注文数を返すクエリはどれですか?
- ASELECT customer_id, COUNT(*) FROM orders GROUP BY customer_id
- BSELECT DISTINCT COUNT(*) FROM orders
- CSELECT customer_id, COUNT(*) FROM orders ORDER BY customer_id
- DSELECT customer_id FROM orders WHERE COUNT(*) > 0
6.ふつう
SELECT COALESCE(phone, 'unknown') FROM customers は、phone が NULL の顧客について何を返しますか?
- Aエラー
- BNULL
- C空文字列
- D'unknown'
7.むずかしい
次のクエリは何を返しますか:SELECT name FROM students WHERE grade > (SELECT AVG(grade) FROM students)
- A最高点の学生のみ
- B成績が平均点を上回る学生
- CWHERE ではサブクエリが使えないためエラー
- D全学生の平均点
8.むずかしい
SELECT day, SUM(amount) OVER (ORDER BY day) FROM sales は何を計算しますか?
- Aその日の合計だけを持つ、1 日 1 行
- Bday の順に並べた amount の累計
- C1 日あたりの平均 amount
- Dすべての行に全 amount の合計
解答
- 1. A · 0 文字以上の任意の文字列
- 2. A · SELECT
- 3. D · COUNT
- 4. D · 学生と科目の両方への外部キーを持つ中間テーブルで
- 5. A · SELECT customer_id, COUNT(*) FROM orders GROUP BY customer_id
- 6. D · 'unknown'
- 7. B · 成績が平均点を上回る学生
- 8. B · day の順に並べた amount の累計
ステップごとの詳しい解答:このトピックは examproblems.com で練習できます。