1.やさしい
主キー(primary key)とは何ですか?
- A各行を一意に識別する列または列の組
- Bすべてのテーブルの最初の列
- Cデータベースのパスワード
- D重複する値を含んでもよいが、NULL を含んではならない列
2.やさしい
UNION ALL は UNION とどう違いますか?
- AUNION ALL は 1 つのテーブルにしか使えない
- BUNION ALL は重複する行を残す
- CUNION ALL は重複する行を取り除く
- DUNION ALL は結果を並べ替える
3.やさしい
GRANT と REVOKE は SQL のどの部分に属しますか?
- Aデータ定義言語(DDL)
- Bデータ操作言語(DML)
- Cデータ制御言語(DCL)
- Dデータ問い合わせ言語(DQL)
4.ふつう
ある列に値 10、20、NULL が入っています。AVG(col) は何を返しますか?
- A10
- BNULL
- C30
- D15
5.ふつう
コミットされた変更がシステムクラッシュ後も残ることを保証する ACID 特性はどれですか?
- A永続性(Durability)
- B一貫性(Consistency)
- C独立性(Isolation)
- D原子性(Atomicity)
6.ふつう
ダーティリードとは何ですか?
- A同じ行を 2 回読んで同じ値を得ること
- Bまだコミットされていない別のトランザクションが書いたデータを読むこと
- CWHERE 句なしでデータを読むこと
- D壊れたディスクからデータを読むこと
7.むずかしい
SELECT dept, name, COUNT(*) FROM emp GROUP BY dept が標準 SQL で無効なのはなぜですか?
- AGROUP BY にはテーブルのすべての列を並べなければならないから
- Bname はグループ化も集約もされておらず、グループごとに 1 つの値を持たないから
- Cdept は集約関数の中に入れなければならないから
- DCOUNT(*) は GROUP BY と一緒に使えないから
8.むずかしい
テーブル employee(emp_id, dept_id, dept_name) のキーは emp_id で、dept_id → dept_name です。正しい記述はどれですか?
- A2NF ではない
- BBCNF であり、したがって 3NF である
- C2NF だが 3NF ではない
- D1NF ではない
解答
- 1. A · 各行を一意に識別する列または列の組
- 2. B · UNION ALL は重複する行を残す
- 3. C · データ制御言語(DCL)
- 4. D · 15
- 5. A · 永続性(Durability)
- 6. B · まだコミットされていない別のトランザクションが書いたデータを読むこと
- 7. B · name はグループ化も集約もされておらず、グループごとに 1 つの値を持たないから
- 8. C · 2NF だが 3NF ではない
ステップごとの詳しい解答:このトピックは examproblems.com で練習できます。