別のテーブルに結合されたテーブルのいくつかの行を更新しようとしています。左のテーブルは ID でインデックス付けされています。右側のテーブルは同じ ID で結合されていますが、ID ごとに複数の行があります。私のクエリは次のようになります。
UPDATE t1
SET t1.modified = t2.created
FROM table1 t1
INNER JOIN table2 t2
ON t1.ID = t2.ID
t1.modified と t2.created はどちらも日時です。前述のように、t2 には ID ごとに複数の行があり、それぞれに作成された値が異なります (つまり、主キーは t2, created です)。私がしたいのは、t2.created=t1.modified の最大値を設定することです。ただし、結合すると、t1.modified 値は特定の順序で更新されないため、最後に更新された行が t1.modified が取得する値になります。t1.modified=max(t2.created) を使用してみましたが、明らかに、更新クエリで集計関数を使用することも、順序句を使用することもできません (つまり、最後に更新された行が効果的になるように行を並べ替えます)。更新クエリの t2.created の最新の値)。
あなたが私に提供できるどんな助けも大歓迎です!ありがとう!!