日期:2014-05-17  浏览次数:20494 次

求个 SQL 语句,有兴趣进来看看
有一张表 A,数据如下:
【姓名】 【重量】 【类别】

张三 50 入库
李四 10 入库
王五 30 入库
张三 20 倒库
李四 10 倒库
王五 20 倒库
王五 30 出库
赵虎 30 出库

我想得到结果:

【姓名】 【入库】 【倒库】 【出库】
张三 50 20 0
李四 10 10 0
王五 30 20 30
赵虎 0 0 30


(备注:还有一个人员表,里面存有所有的人员)

------解决方案--------------------
SQL code

select 姓名,
    sum(case when 类别='入库' then 数量 else 0 end) 入库,
    sum(case when 类别='出库' then 数量 else 0 end) 出库,
    sum(case when 类别='倒库' then 数量 else 0 end) 倒库
from tb
group by 姓名