首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 数据库 > SQL Server >

了,这个SQL语句该如何写?查询+统计

2012-03-09 
求助了,这个SQL语句该怎么写?查询+统计比如有这样的表段idnamepay1huang20002liu5000...........我想输出

求助了,这个SQL语句该怎么写?查询+统计
比如有这样的表段
id name pay
1 huang 2000
2 liu 5000
...........
我想输出的结果是
查询出来的样子是:
1 huang 2000
2 liu 5000
无 无 7000

第二种情况是
1 huang 2000
2 liu 5000
3 huang 3000 

...........(两个huang)

我想输出的结果是:
1 huang 5000
2 liu 5000
无 无 10000

谢谢了


[解决办法]
/*
比如有这样的表段
id name pay
1 huang 2000
2 liu 5000
...........
我想输出的结果是
查询出来的样子是:
1 huang 2000
2 liu 5000
无 无 7000

第二种情况是
1 huang 2000
2 liu 5000
3 huang 3000 
(两个huang)
我想输出的结果是:
1 huang 5000
2 liu 5000
无 无 10000
*/
--情况一:
go
if OBJECT_ID('tbl') is not null
drop table tbl
go
create table tbl(
id varchar(5),
name varchar(10),
pay int
)
go
insert tbl
select '1','huang',2000 union all
select '2','liu',5000

select * from tbl 
union all
select '合','计',SUM(pay) from tbl

/*
结果:
idnamepay
1huang2000
2liu5000
合计7000
*/
--情况二

go
if OBJECT_ID('tbl') is not null
drop table tbl
go
create table tbl(
id varchar(5),
name varchar(10),
pay int
)
go
insert tbl
select '1','huang',2000 union all
select '2','liu',5000 union all
select '1','huang',3000


select id,name,SUM(pay) from tbl
group by name,id
union all
select '合','计',SUM(pay) from tbl

/*
结果:(我把相同name的id改成一样了)
idname(无列名)
1huang5000
2liu5000
合计10000

*/

热点排行
Bad Request.