1.やさしい
クエリの中で列やテーブルに一時的な別名を付けるキーワードはどれですか?
- ARENAME
- BNAME
- CAS
- DALIAS
2.やさしい
INNER JOIN が返すのは次のうちどれですか?
- A左テーブルのすべての行。一致がない場合は NULL が入る
- B両方のテーブルで値が一致する行のみ
- C両方のテーブルのすべての行
- D一致しない行
3.やさしい
結果から重複行を取り除く SQL キーワードはどれですか?
- ASINGLE
- BDISTINCT
- CDIFFERENT
- DUNIQUE
4.ふつう
EXCEPT(Oracle では MINUS)は何を返しますか?
- A両方のクエリのすべての行(重複なし)
- B両方のクエリに現れる行
- C1 つ目のクエリの行のうち、2 つ目に現れないもの
- D2 つ目のクエリの行のうち、1 つ目に現れないもの
5.ふつう
SELECT price * 2 AS double_price FROM t WHERE double_price > 10 が多くのデータベースで失敗するのはなぜですか?
- A別名にアンダースコアを含めてはいけないから
- BWHERE はテキスト列しか比較できないから
- CWHERE は SELECT リストより先に評価されるので、別名がまだ存在しないから
- DSELECT リストでは算術演算が許されないから
6.ふつう
HAVING について正しい記述はどれですか?
- ASELECT 文の中で WHERE より前に書かなければならない
- BGROUP BY と一緒には使えない
- C結果を並べ替える
- D集約関数を使ってグループを絞り込むことができる
7.むずかしい
深さがわからない組織ツリーで、ある管理職の下にいるすべての従業員を見つけるのに最も適した SQL の機能はどれですか?
- Amanager_id への UNIQUE 制約
- Bmanager_id での GROUP BY
- C再帰的な共通テーブル式(WITH RECURSIVE)
- Dmanager_id による employees テーブルの 1 回の自己結合
8.むずかしい
当直の医師 2 人が、それぞれ相手がまだ当直であることを確認し、2 人とも同時に当直を外れます。ここでスナップショット分離がなお許してしまう異常はどれですか?
- Aダーティライト
- B1 つのトランザクション内の反復不能読み取り
- C書き込みスキュー
- Dダーティリード
解答
- 1. C · AS
- 2. B · 両方のテーブルで値が一致する行のみ
- 3. B · DISTINCT
- 4. C · 1 つ目のクエリの行のうち、2 つ目に現れないもの
- 5. C · WHERE は SELECT リストより先に評価されるので、別名がまだ存在しないから
- 6. D · 集約関数を使ってグループを絞り込むことができる
- 7. C · 再帰的な共通テーブル式(WITH RECURSIVE)
- 8. C · 書き込みスキュー
ステップごとの詳しい解答:このトピックは examproblems.com で練習できます。