以下是我的问题的简化版本:
Table 1
Key1, lastdate, lasttranstype
Table2
Table1key1, trandate, trantype
我希望SQL语句使用Table2中的匹配记录和最新日期更新table1中每条记录的table1上的lastdate和lasttransdate
我的数据库正在取得进展。
这是否可行(我当然可以编写一个程序来执行此操作,但我宁愿只使用SQL语句执行此操作)?
答案 0 :(得分: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)
答案 1 :(得分:0)
update table1, table2
set table1.lastdate = table2.trandate, table1.lasttranstype = table2.trantype
where table1.key1 = table2.table1key1