1.やさしい
CREATE、ALTER、DROP などの文は SQL のどの部分に属しますか?
- Aトランザクション制御言語(TCL)
- Bデータ操作言語(DML)
- Cデータ定義言語(DDL)
- Dデータ制御言語(DCL)
2.やさしい
CHECK 制約は何をしますか?
- Aテーブルの行数を数える
- Bユーザーのパスワードを検証する
- C値が条件を満たさない行を拒否する
- Dクエリを実行する前に、テーブルが存在するかどうかを確認する
3.やさしい
給与が高い順から低い順に結果を並べ替えるにはどうしますか?
- ASORT salary DOWN
- BGROUP BY salary DESC
- CORDER BY salary ASC
- DORDER BY salary DESC
4.ふつう
テーブルにクラスタ化インデックスが 1 つしか持てないのはなぜですか?
- Aクラスタ化インデックスは主キーにしか作れないから
- Bクラスタ化インデックスはメモリを使いすぎるから
- C行は物理的に 1 つの順序でしか格納できないから
- DSQL 標準が、1 つのテーブルに 2 つ以上のインデックスを持つことを禁止しているから
5.ふつう
共通テーブル式(WITH name AS (...))は何を提供しますか?
- A削除されるまでディスクに保存され続ける恒久的なテーブル
- B新しいデータベースユーザー
- C1 つの文の中で使える、名前付きの一時的な結果
- D列に対するインデックス
6.ふつう
LEFT JOIN が返すのは次のうちどれですか?
- A右テーブルのすべての行のみ
- B両方のテーブルの一致する行のみ
- Cどちらのテーブルでも一致しない行
- D左テーブルのすべての行と右テーブルの一致する行。一致しない部分は NULL になる
7.むずかしい
SELECT day, SUM(amount) OVER (ORDER BY day) FROM sales は何を計算しますか?
- Aその日の合計だけを持つ、1 日 1 行
- Bすべての行に全 amount の合計
- C1 日あたりの平均 amount
- Dday の順に並べた amount の累計
8.むずかしい
あるアプリは UPDATE item SET qty = 4, version = 8 WHERE id = 1 AND version = 7 を実行し、更新された行がなければ競合を報告します。これはどの手法ですか?
- Aログ先行書き込み
- B行ロックを用いる厳格な 2 相ロック
- C楽観的同時実行制御
- Dデータベースのシャーディング
解答
- 1. C · データ定義言語(DDL)
- 2. C · 値が条件を満たさない行を拒否する
- 3. D · ORDER BY salary DESC
- 4. C · 行は物理的に 1 つの順序でしか格納できないから
- 5. C · 1 つの文の中で使える、名前付きの一時的な結果
- 6. D · 左テーブルのすべての行と右テーブルの一致する行。一致しない部分は NULL になる
- 7. D · day の順に並べた amount の累計
- 8. C · 楽観的同時実行制御
ステップごとの詳しい解答:このトピックは examproblems.com で練習できます。