如何在重复条目中更新单行

  • 本文关键字:更新 单行 php mysql
  • 更新时间 :
  • 英文 :


我有两个表T1和T2

t1->

id          line        Amt         
----------- ----------- ----------- 
1           1           0
1           2           0
2           1           0
2           2           0
2           3           0
3           3           0
3           4           0
3           5           0
4           2           0
4           3           0
--------------------------

t2->

id          amt         
----------- ----------- 
1           500
2           350
3           750
4           400

在这种情况下,我需要用T2的数量更新T1。但是我只需要在最小行上更新每个ID的一行。我可以使用以下查询在MSSQL中进行操作 -

update a set a.amt=c.amt from T1 a inner join (
select id,min(line) line from T1 group by Id) b
on a.id=b.id and a.line=b.line
Inner join T2 c on a.id=c.Id

我想在mysql中进行。有什么想法要做这样的事情

您需要调整语法删除 from子句,在加入part part

之后移动 set子句
update T1 a 
inner join (
  select id,min(line) line from T1 group by Id
) b on a.id=b.id and a.line=b.line
inner join T2 c on a.id=c.Id
set a.amt=c.amt 

DEMO

最新更新