前提・実現したいこと
WRKのCORDがMSTのCORDに含まれているかつ、PRICEが違う場合、
WRKのPRICEをMSTのPRICEに上書きするというSQLを実行したいです。
ですが、現状このSQLを実行すると「単一行副問合せにより2つ以上の行が戻されます」とエラーがでてしまいます。どうしたらエラーを起こさなくできますか?教えてください。
※一度のUPDATE文で実行したいです。。
MSTテーブル
CORD,PRICE
1000,1
1100,10
11001,10
11009,10
1200,100
WRKテーブル
CORD
1000,10
1100,100
1200,1000
■■な機能を実装中に以下のエラーメッセージが発生しました。
発生している問題・エラーメッセージ
ORA-1427: 単一行副問合せにより2つ以上の行が戻されます
### 該当のソースコード UPDATE MST M SET M.PRICE = (SELECT W.PRICE FROM WRK W WHERE M.CORD =W.CORD AND M.PRICE <> W.PRICE) WHERE M.CORD = (SELECT WW.CORD FROM WRK WW,MST MM WHERE WW.CORD IN (MM.CORD) AND MM.PRICE <> WW.PRICE); ```ここに言語名を入力 ORACLESQLDEVELOPER ソースコード
実現したいこと
MSTテーブル
CORD,PRICE
1000,10
1100,100
11001,100
11009,100
1200,1000

回答1件
あなたの回答
tips
プレビュー