如何写根据明细表补充主账户信息
明细表数据如下:
账户 姓名 积分 时间
1101 张三 100 2014-01-01
1101 张三 100 2014-01-02
1101 张三 100 2014-01-03
1101 张三 100 2014-01-05
1101 张三 100 2014-01-06
主账户表数据如下:
账户 姓名 积分
1101 100
1102 100
1103 100
现在想把主账户表的姓名补全。
有什么快的办法?
------解决方案--------------------UPDATE a
SET a.[姓名]=b.[姓名]
FROM (SELECT DISTINCT[账户] ,[姓名] FROM b )b
WHERE a.[账户] =b.[账户]
a表为主帐,B表为明细
------解决方案--------------------试试这个:
UPDATE 主账户表
SET 姓名=b.姓名
FROM
(
SELECT 账户 ,max(姓名) as 姓名
FROM 明细表
group by 账户
)b
WHERE 主账户表.账户 =b.账户
------解决方案--------------------a为主账户表,b为明细表,我已经用实例测试过了,可以满足你的要求
UPDATE [master].[dbo].[a]
SET a.[姓名] = c.[姓名]
from (select distinct * from b) c
where a.[账户]=c.[账户]