create table A(
id int, --编号
name varchar(10), --姓名
hour float --时间
)
create table B(
id int , --编号
name varchar(10), --姓名
hour float --时间
)
insert A values('1','张三','15'),('2','李四','7'),('3','王五','10')
insert B values('1','张三','4.5'),('1','张三','2'),('2','李四','3'),('2','李四','8'),('3','王五','')
用一句sql语句update表A中的hour列,替换A.hour的数据是B.hour,其中B.hour要先汇总(注:表B中的王五列时间为空值)
è¿ä¸ªæ ·åï¼sqlserverï¼
update a set a.hour=c.hour from a inner join (select id,sum(isnull(hour,0)) hour from b group by id) c on a.id=c.id追é®çæ¡å¯¹äºï¼ææ³äºå¥½ä¹ 没ååºæ¥ï¼å¤§ç¥ä½ æä¹åçè¿7亿å¤çé®é¢ï¼
追ç没åç7亿ï¼7亿æ¯å¸®å©è¿ç人æ°ï¼åçäº17ä¸å¤å§
追é®æ¯çæ¯çï¼è¯´éäºï¼ä½ æ¯ç¾åº¦ç¥éå ¬å¸ä¸é¨åçå«äººé®é¢ç人å
追çä¸æ¯ï¼ä¸ªäººç±å¥½