--这个意思?你把你需要的数据表现,贴出来! select 集团, 应发工资=sum(基本工资)+sum(补贴) from 表 group by 集团
最简单也最笨的办法: -------------------------------------------------------------------- create procedure sp_test(@para int) as begin if @para=0 --按集团汇总的SQL ... else if @para=1 --按分公司汇总的SQL ... else if @para=2 --按部门汇总的SQL ... else if @para=3 --按人员汇总的SQL ... end go
create procedure GetSalaryTotal(@type int) as begin select case @type when 1 then 集团 when 2 then 分公司 when 3 then 部门 else 人员 end, 基本工资=sum(基本工资),补贴=sum(补贴),应发工资=sum(应发工资) from tablename group by case @type when 1 then 集团 when 2 then 分公司 when 3 then 部门 else 人员 end end
select 集团,
应发工资=sum(基本工资)+sum(补贴)
from 表
group by 集团
--------------------------------------------------------------------
create procedure sp_test(@para int)
as
begin
if @para=0
--按集团汇总的SQL
...
else if @para=1
--按分公司汇总的SQL
...
else if @para=2
--按部门汇总的SQL
...
else if @para=3
--按人员汇总的SQL
...
end
go
as
begin
select case @type when 1 then 集团
when 2 then 分公司
when 3 then 部门 else 人员 end,
基本工资=sum(基本工资),补贴=sum(补贴),应发工资=sum(应发工资)
from tablename
group by case @type when 1 then 集团
when 2 then 分公司
when 3 then 部门 else 人员 end
end