1.やさしい
CROSS JOIN は何を返しますか?
- A2 つのテーブルの行のあらゆる組み合わせ
- B共通のキー列で一致する行だけ
- C最初のテーブルの行だけ
- D一致しない行だけ
2.やさしい
既存のテーブルに新しい列を追加する文はどれですか?
- AINSERT COLUMN
- BUPDATE TABLE
- CCREATE COLUMN
- DALTER TABLE
3.やさしい
外部キー(foreign key)とは次のうちどれですか?
- A外国のユーザーが使うキー
- B別のテーブルの主キーを参照する列
- C常に暗号化されているキー
- Dテーブルのすべての行にわたって値が一意でなければならない列
4.ふつう
EXCEPT(Oracle では MINUS)は何を返しますか?
- A2 つ目のクエリの行のうち、1 つ目に現れないもの
- B両方のクエリに現れる行
- C両方のクエリのすべての行(重複なし)
- D1 つ目のクエリの行のうち、2 つ目に現れないもの
5.ふつう
第三正規形(3NF)で取り除かれるのは次のうちどれですか?
- A複合キー
- B非キー属性間の推移的関数従属
- C原子的な値
- Dキーに含まれない列に対する冗長なインデックス
6.ふつう
第二正規形(2NF)で取り除かれるのは次のうちどれですか?
- A別の非キー列を介した、非キー列間の推移的関数従属
- Bすべての NULL 値
- C複合キーの一部に対する非キー列の部分関数従属
- D外部キー
7.むずかしい
customers LEFT JOIN orders の後、顧客ごとの注文数を数えるのに COUNT(*) ではなく COUNT(o.id) を使うのはなぜですか?
- ACOUNT(*) は NULL 値を含む行を無視するから
- B結合の後では COUNT(*) が使えないから
- CCOUNT(o.id) は異なる顧客だけを数えるから
- DCOUNT(*) は、注文のない顧客の NULL で埋められた行を 1 と数えるから
8.むずかしい
次のクエリは何を返しますか:SELECT name FROM students WHERE grade > (SELECT AVG(grade) FROM students)
- A全学生の平均点
- B成績が平均点を上回る学生
- C最高点の学生のみ
- DWHERE ではサブクエリが使えないためエラー
解答
- 1. A · 2 つのテーブルの行のあらゆる組み合わせ
- 2. D · ALTER TABLE
- 3. B · 別のテーブルの主キーを参照する列
- 4. D · 1 つ目のクエリの行のうち、2 つ目に現れないもの
- 5. B · 非キー属性間の推移的関数従属
- 6. C · 複合キーの一部に対する非キー列の部分関数従属
- 7. D · COUNT(*) は、注文のない顧客の NULL で埋められた行を 1 と数えるから
- 8. B · 成績が平均点を上回る学生
ステップごとの詳しい解答:このトピックは examproblems.com で練習できます。