こんにちは、私はオラクルの相関更新に関してこの種の問題を抱えています。
テーブルparamsがあると考えてください。
id_s id_p value desc
-----------------------------------------------
10064 9 aaa r
10064 8 bbb t
10064 4 ccc t
10064 4 ttt y
11119 9 ddd f
11119 8 eee g
11119 4 fff b
11119 4 kkk x
だから私は次を取得するためにparamsを更新したい
id_s id_p value desc
-----------------------------------------------
10064 9 aaa r
10064 8 bbb t
10064 4 ccc t
10064 4 ttt y
11119 9 aaa r
11119 8 bbb t
11119 4 ccc t
11119 4 ttt y
私はこのように更新を書きます
update params p1
set (p1.value, p1.desc) = (
select p2.value
, p2.desc
from params p2
where p2.id_s = 10064
and p2.id_p = p1.id_p
)
where p1.id_s = 11119
;
実行するとエラー「ORA01427: 単一行サブクエリが複数の行を返します」が返されます
この更新を機能させるにはどうすればよいですか?