0

これが私の問題の簡略版です。

Table 1
Key1, lastdate, lasttranstype

Table2
Table1key1, trandate, trantype

SQL ステートメントで、最新の日付を持つ Table2 の一致するレコードを使用して、そのテーブルの各レコードの table1 の lastdate と lasttransdate を更新する必要があります

私のDBは進行中です。

これは可能ですか (もちろん、それを実行するプログラムを作成できますが、SQL ステートメントだけで実行したいのですが)?

4

2 に答える 2

1

T-SQL の場合:

UPDATE Table1 
SET lastdate = trandate, lasttranstype = trantype
FROM Table1 INNER JOIN Table2 ON Table1.Key1 = Table2.Table1Key1

編集: Progress が RDBMS の名前であることを知りませんでした。以下はあなたのために働くでしょうか?

UPDATE Table1
SET lastdate = 
(SELECT trandate FROM Table2 WHERE Table2.Table1Key1 = Table1.Key1),
lasttranstype = 
(SELECT trantype FROM Table2 WHERE Table2.Table1Key1 = Table1.Key1)
于 2009-10-22T12:15:34.813 に答える
0
update table1, table2 
set table1.lastdate = table2.trandate, table1.lasttranstype = table2.trantype 
where table1.key1 = table2.table1key1
于 2009-10-22T12:07:50.803 に答える