1.やさしい
クエリの結果を並べ替えるキーワードはどれですか?
- AARRANGE
- BORDER BY
- CSORT
- DGROUP BY
2.やさしい
代理キー(サロゲートキー)とは何ですか?
- A別のテーブルを参照するキー
- Bメールアドレスのような実世界のデータから作ったキー
- C自動採番の id のように、業務上の意味を持たない人工的な識別子
- Dビューでだけ使われるキー
3.やさしい
外部キー(foreign key)とは次のうちどれですか?
- Aテーブルのすべての行にわたって値が一意でなければならない列
- B外国のユーザーが使うキー
- C別のテーブルの主キーを参照する列
- D常に暗号化されているキー
4.ふつう
SELECT COALESCE(phone, 'unknown') FROM customers は、phone が NULL の顧客について何を返しますか?
- A'unknown'
- Bエラー
- CNULL
- D空文字列
5.ふつう
LEFT JOIN が返すのは次のうちどれですか?
- Aどちらのテーブルでも一致しない行
- B両方のテーブルの一致する行のみ
- C右テーブルのすべての行のみ
- D左テーブルのすべての行と右テーブルの一致する行。一致しない部分は NULL になる
6.ふつう
2 つの SELECT クエリの間で使う INTERSECT は何を返しますか?
- A1 つ目の結果にあって 2 つ目にない行
- B両方の結果に現れる行
- C結果の直積
- D両方の結果のすべての行
7.むずかしい
クエリ FROM customers c LEFT JOIN orders o ON o.customer_id = c.id WHERE o.status = 'paid' が、注文のない顧客を思いがけず落としてしまいます。なぜですか?
- Astatus が予約語だから
- B結合には ON ではなく USING を使うべきだから
- CLEFT JOIN は一致しない行を決して残さないから
- Do に対する WHERE 条件が NULL で埋められた行を除外し、内部結合と同じになるから
8.むずかしい
(last_name, first_name) に複合インデックスがあります。それを最も効果的に使える条件はどれですか?
- AWHERE first_name = 'Eva'
- BWHERE last_name = 'Jansen'
- CWHERE UPPER(first_name) = 'EVA'
- DWHERE first_name LIKE '%a'
解答
- 1. B · ORDER BY
- 2. C · 自動採番の id のように、業務上の意味を持たない人工的な識別子
- 3. C · 別のテーブルの主キーを参照する列
- 4. A · 'unknown'
- 5. D · 左テーブルのすべての行と右テーブルの一致する行。一致しない部分は NULL になる
- 6. B · 両方の結果に現れる行
- 7. D · o に対する WHERE 条件が NULL で埋められた行を除外し、内部結合と同じになるから
- 8. B · WHERE last_name = 'Jansen'
ステップごとの詳しい解答:このトピックは examproblems.com で練習できます。