Re: 19857について

この質問の投稿一覧へ

なし Re: 19857について

msg# 1.1
depth:
1
前の投稿 - 次の投稿 | 親投稿 - 子投稿なし | 投稿日時 2019-1-23 13:02
quensan  長老   投稿数: 119
引用:
また、表名の代わりに副問合せを指定したUPDATE文にWHERE句を指定する場合も、副問合せのSELECT句に指定した列に関する条件しか指定できませんので注意しましょう。
と解説に書いてあるように、SETだけでなくWHERE句に指定する列も副問合せのSELECT句に指定する必要があるのですよ。
試しに副問合せでmanager_idだけ指定するとおこられます。

SQL> UPDATE (SELECT manager_id FROM employees) SET manager_id = 1005 WHERE hiredate >= '08-04-01';
UPDATE (SELECT manager_id FROM employees) SET manager_id = 1005 WHERE hiredate >= '08-04-01'
*
行1でエラーが発生しました。:
ORA-00904: "HIREDATE": 無効な識別子です。

投稿ツリー

  >フォーラム検索へ


Copyright (c) 2020 Ping-t All rights reserved.