select sum(jj) as jjcount,sum(pp) as ppcount from table group by name
insert into b select name sum(jj) sum(pp) from a group by name
insert into b select name,sum(jj),sum(pp) from a group by name
如果表b结构和select name,sum(jj),sum(pp) from a group by name选取出的值类型一致,Field个数相等,可用insert into b select name,sum(jj),sum(pp) from a group by name
答案差不多,只是提供例外一种方式: select name,sum(jj),sum(pp) into b from a group by name 这种方法自动创建一个新的table b,无需建表的语句了. 之后再向b表插入时使用如下语句即可: insert into b select name,sum(jj),sum(pp) from a group by name
insert into b (name,jj,pp) select name sum(jj) as jj, sum(pp) as pp from a group by name
补充我提到的创建表插入时有一点小问题,field 2,3没有名称,现在订正: select name, sum(jj) jj, sum(pp) pp into b from a group by name;
insert into b select name sum(jj) sum(pp) from a group by name
我怀疑上面的到底行不行啊 insert into b select name sum(jj) sum(pp) from a where a.name=a.name 不用where子句,行吗?
可以的,但是有Pm_Key重复或者有IDENTITY识别等情况时是不可以的
大家回答的差不多了,补充一点点:insert into b select name,sum(IsNull(jj,0)),sum(IsNull(pp,0)) from a group by name
group by name
select name sum(jj) sum(pp) from a group by name
select name,sum(jj),sum(pp) from a group by name
select name,sum(jj),sum(pp) from a group by name
select name,sum(jj),sum(pp) into b from a group by name
这种方法自动创建一个新的table b,无需建表的语句了.
之后再向b表插入时使用如下语句即可:
insert into b select name,sum(jj),sum(pp) from a group by name
select name sum(jj) as jj, sum(pp) as pp from a group by name
select name, sum(jj) jj, sum(pp) pp into b from a group by name;
select name sum(jj) sum(pp) from a group by name
insert into b
select name sum(jj) sum(pp) from a where a.name=a.name
不用where子句,行吗?
select name,sum(IsNull(jj,0)),sum(IsNull(pp,0))
from a group by name