私は以下のように1つのテーブルを持っています
COAR_ID COCE_ID COCI_TYPE BRKR_NM AGNCY_NM
123 123 P abc
123 231 G def
123 331 G ghi
max(COCE_ID) および COCI_TYPE='G' である COCI_TYPE=P の AGNCY_NM を更新したい
したがって、出力は
COAR_ID COCE_ID COCI_TYPE BRKR_NM AGNCY_NM
123 123 P abc ghi
123 231 G def
123 331 G ghi
次の更新クエリを使用しています
UPDATE Table
SET
AGNCY_NM = BB.AGNCY_NM
,UPDT_NBR = 3
FROM
Table AA
,Table BB
WHERE
AA.COAR_ID=BB.COAR_ID
AND AA.COCI_TYPE='P'
AND BB.AGNCY_NM <> ''
AND AA.UPDT_NBR <> 3
AND BB.COCE_ID=(SELECT MAX(CC.COCE_ID) FROM Table CC WHERE CC.COAR_ID=BB.COAR_ID )
期待どおりに動作していますが、パフォーマンスの問題が発生する可能性があるため、同じテーブルを再度使用したくありません。
列を更新するためのより良い解決策はありますか??
ありがとう、ディラジ