1.やさしい
既存のテーブルに新しい列を追加する文はどれですか?
- AINSERT COLUMN
- BUPDATE TABLE
- CALTER TABLE
- DCREATE COLUMN
2.やさしい
CREATE、ALTER、DROP などの文は SQL のどの部分に属しますか?
- Aトランザクション制御言語(TCL)
- Bデータ制御言語(DCL)
- Cデータ操作言語(DML)
- Dデータ定義言語(DDL)
3.やさしい
トランザクションで COMMIT は何をしますか?
- A新しいテーブルを開始する
- Bデータベース全体をロックする
- Cトランザクションのすべての変更を確定させる
- Dトランザクション開始以降に行ったすべての変更を取り消す
4.ふつう
列にインデックスを作成するのはなぜですか?
- ANULL 値を防ぐため
- Bディスク容量を節約するため
- Cその列に対する検索や結合を高速化するため
- Dそれらの列に対する挿入と更新を高速化するため
5.ふつう
SELECT price * 2 AS double_price FROM t WHERE double_price > 10 が多くのデータベースで失敗するのはなぜですか?
- AWHERE はテキスト列しか比較できないから
- B別名にアンダースコアを含めてはいけないから
- CWHERE は SELECT リストより先に評価されるので、別名がまだ存在しないから
- DSELECT リストでは算術演算が許されないから
6.ふつう
ある列に値 10、20、NULL が入っています。AVG(col) は何を返しますか?
- ANULL
- B10
- C30
- D15
7.むずかしい
(last_name, first_name) に複合インデックスがあります。それを最も効果的に使える条件はどれですか?
- AWHERE first_name = 'Eva'
- BWHERE UPPER(first_name) = 'EVA'
- CWHERE first_name LIKE '%a'
- DWHERE last_name = 'Jansen'
8.むずかしい
テーブル b の列 y には値 1、2、NULL が入っています。SELECT * FROM a WHERE x NOT IN (SELECT y FROM b) は何を返しますか?
- Ax が NULL の a の行だけ
- Bx が 1 でも 2 でもない a の行
- Cまったく行を返さない
- Da のすべての行
解答
- 1. C · ALTER TABLE
- 2. D · データ定義言語(DDL)
- 3. C · トランザクションのすべての変更を確定させる
- 4. C · その列に対する検索や結合を高速化するため
- 5. C · WHERE は SELECT リストより先に評価されるので、別名がまだ存在しないから
- 6. D · 15
- 7. D · WHERE last_name = 'Jansen'
- 8. C · まったく行を返さない
ステップごとの詳しい解答:このトピックは examproblems.com で練習できます。