sql update group by 查询更新

7/19/2012 9:56:37 PM

方法一:

update a set
a.OrdQty=b.OrdQty,a.RDate=b.RDate,a.TiHuostate=b.TiHuostate,a.TiHuoSiJi=b.TiHuoSiJi,a.TiHuoDate=b.TiHuoDate,
a.ShiJiDGCdate=b.ShiJiDGCdate,a.HUIDdate=b.HUIDdate,a.DanJFanhuiBJdate=b.DanJFanhuiBJdate,a.BeiZhu=b.BeiZhu
FROM
    (select a.DOATHno,MAX(b.OrdQty),MAX(b.RDate),MAX(b.TiHuostate),
    MAX(b.TiHuoSiJi),MAX(b.TiHuoDate),MAX(b.ShiJiDGCdate),
    MAX(b.HUIDdate),MAX(b.DanJFanhuiBJdate),MAX(b.BeiZhu)
    from Track_DOA a ,Track_DOA b
    where a.DOATHno=b.DOATHno and a.DOATHno='HTQ1111100018'
    group by a.DOATHno ) b,Track_DOA AS a
where a.DOATHno=b.DOATHno and a.DOATHno='HTQ1111100018'
group by a.DOATHno

 

方法二:

update a set
a.OrdQty=b.OrdQty,a.RDate=b.RDate,a.TiHuostate=b.TiHuostate,a.TiHuoSiJi=b.TiHuoSiJi,a.TiHuoDate=b.TiHuoDate,
a.ShiJiDGCdate=b.ShiJiDGCdate,a.HUIDdate=b.HUIDdate,a.DanJFanhuiBJdate=b.DanJFanhuiBJdate,a.BeiZhu=b.BeiZhu
FROM
    (select a.DOATHno,MAX(b.OrdQty),MAX(b.RDate),MAX(b.TiHuostate),
    MAX(b.TiHuoSiJi),MAX(b.TiHuoDate),MAX(b.ShiJiDGCdate),
    MAX(b.HUIDdate),MAX(b.DanJFanhuiBJdate),MAX(b.BeiZhu)
    from Track_DOA a ,Track_DOA b
    where a.DOATHno=b.DOATHno and a.DOATHno='HTQ1111100018'
    group by a.DOATHno ) b,Track_DOA AS a
where a.DOATHno=b.DOATHno and a.DOATHno='HTQ1111100018'