ORACLE MASTER Silver SQL 26aiDMLとトランザクションオリジナル・公式資料照合難易度★★★☆☆

Oracle AI Database 26aiでemployees(emp_id PRIMARY KEY, dept_id, salary NUMBER)は(1,10,100)、(2,20,100)、raises(dept_id PRIMARY KEY, increment_amount NUMBER)は(10,20)だけである。次が成功した後のemp_id=1、2のsalaryの組はどれか。 UPDATE employees e SET salary = salary + (SELECT r.increment_amount FROM raises r WHERE r.dept_id = e.dept_id) WHERE EXISTS (SELECT 1 FROM raises r WHERE r.dept_id = e.dept_id);

A
120、NULL

WHERE EXISTSがない場合の空スカラー副問合せによるNULL更新と混同しています。社員2は更新対象ではありません。

B
120、120

社員2の部署20に対応する昇給データはありません。全社員へ同じ額を加算する文ではありません。

C
120、100★ 正解

社員1だけを更新し、対応する行がない社員2はWHEREで対象から外します。

D
100、100

部署10には副問合せで一致する行があり、社員1の更新が実行されます。

解説

EXISTSで対応する昇給行がある社員だけを対象にしています。社員1は20を加えて120、社員2は対象外で100のままです。raisesの主キーによって、適用対象の副問合せも複数行にはなりません。

根拠資料・確認情報

対応範囲:Oracle AI Database 26ai SQL Associate(1Z0-171-JPN)

資料確認日:2026-10-29

同じレッスンの問題

アプリで毎日学習しよう

ゲーミフィケーションで ORACLE MASTER Silver SQL 26ai 合格を目指す。無料・課金なし。

更新: 2026/10/28