22,207
社区成员
发帖
与我相关
我的任务
分享
--测试数据
declare @table table (A3使用人 nvarchar(10),A3纸张数 int,A4使用人 nvarchar(10),A4纸张数 int,
A5使用人 nvarchar(10),A5纸张数 int)
insert into @table
select '张',1,'王',3,'李',4 union all
select '王',2,'李',1,'',null union all
select '张',4,'',null,'',null
--只能做成存储过程了,以姓名来查询
declare @name nvarchar(10)
set @name = '张'
select @name as 使用人,sum(case A3使用人 when @name then (isnull(A3纸张数,0)) else 0 end +
case A4使用人 when @name then (isnull(A4纸张数,0)) else 0 end +
case A5使用人 when @name then (isnull(A5纸张数,0)) else 0 end) as 总纸张数
from @table
--结果
--------------
张 5