同じテーブルの別のレコードを使用して、テーブル内の2つのカラムを更新しようとしています。以下は私が思いついたSQLですが、私は同じレコードを返す複数のサブクエリを避けることができますか?私はOracle 11gR2に取り組んでいます。複数のサブクエリの回避
UPDATE
IFTBL E
SET
E.ATT_CREATED = (SELECT A.CREATED FROM ATT A WHERE A.ROW_ID = E.T_ACTIVITYA__RID),
E.ATT_CREATED_BY = (SELECT B.CREATED_BY FROM ATT B WHERE B.ROW_ID = E.T_ACTIVITYA__RID)
WHERE
E.IF_ROW_BATCH_NUM = BATCH_NO_IN AND E.IF_ROW_STAT = 'EXPORTED' AND E.ATT_FILE_SRC_TYPE = 'FILE';