土曜の昼、学校帰りの昼メシの思い出

見ていただいてありがとうございます。

どなたか、方法がお分かりになる方、
ご教授いただけるよう宜しく御願いいたします。

ORACLEのSQL_PLUSを使用して以下のような
SQLを実行するとエラーとなります。

UPDATE テーブル名1 , テーブル名2
SET
テーブル名1.項目A = '2' ,
テーブル名1.項目B = '02' ,
テーブル名1.項目C = テーブル名2.項目A

当方、ACCESSとSQLサーバーでSQLの経験が若干あり、
そちらではこの記述方法で正常実行されるのですが、
オラクルでの記述方法がよくわかりません。
ネット等を利用し調べたのですが、打開策が見つからず、質問させていただこうと思った次第です。

どうか宜しく御願いいたします。

A 回答 (3件)

update table1 set A = '2',B = '02'


C = (select A from table2 )

where節は適宜つけて下さい。
例えば
update table1 set A = '2',B = '02'
C = (select A from table2 where A = '3')
where B = '01'
って感じで。
    • good
    • 1
この回答へのお礼

解決しました、ありがとうございました。
自分で試したとき、副問い合わせも
試してみていたはずなのですが・・・、
何か記述を失敗していたみたいです。
ありがとうございました。

お礼日時:2004/10/07 15:39

こんにちは。



残念ながらORACLEでは、
UPDATE文でテーブルを複数指定できません・・・。

UPDATEをするテーブルが複数ならば、別々にやるしかないですね。

UPDATEするテーブルが1つで、項目に別テーブルの値を参照したい場合は、

SET ○○=(SELECT ×× FROM △△)

です・・・。
(^^ゞ
    • good
    • 1

1:具体的に、どんなエラーが出ますか?


2: WHEREがないけど???

この回答への補足

返答ありがとうございます。
1の質問に対してですが、
[ORA-00971 : SETキーワードがありません。]
というエラーが起きます。

あと、2の質問に対してですが、
WHERE句は特に必要ない気がするのですが、
必要なのでしょうか?。
当方にはちょっとわかりません。

以上、宜しく御願いいたします。

補足日時:2004/10/07 15:27
    • good
    • 0
この回答へのお礼

解決しましたありがとうございました。

お礼日時:2004/10/07 15:37

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人はこんなQ&Aも見ています

関連するカテゴリからQ&Aを探す


おすすめ情報

このQ&Aを見た人がよく見るQ&A