SQL 行列转换
来源:互联网 发布:商城优化 编辑:程序博客网 时间:2024/06/10 09:49
我有一个表testsql数据如下:
------------------------------
ID num type
1 80 进货
2 10 出货
3 40 进货
1 5 进货
2 140 出货
3 15 出货
------------------------------
我现在想得到如下的表数据:
ID 进货 出货 库存增加
1 85 0 85
2 0 150 -150
3 40 15 35
-------------------------------
------------------------------
ID num type
1 80 进货
2 10 出货
3 40 进货
1 5 进货
2 140 出货
3 15 出货
------------------------------
我现在想得到如下的表数据:
ID 进货 出货 库存增加
1 85 0 85
2 0 150 -150
3 40 15 35
-------------------------------
create table testsql
(
id int,
num int,
type varchar(10)
)
go
insert testsql
select 1,80,'进货' union
select 2,10,'出货' union
select 3,40,'进货' union
select 1,5,'进货' union
select 2,140,'出货' union
select 3,15,'出货'
insert testsql
select 1,80,'进货' union
select 2,10,'出货' union
select 3,40,'进货' union
select 1,5,'进货' union
select 2,140,'出货' union
select 3,15,'出货'
go
第一种:
select Id,
sum(case when type='进货' then num else 0 end) as 进货,
sum(case when type='出货' then num else 0 end) as 出货,
(sum(case when type='进货' then num else 0 end)-sum(case when type='出货' then num else 0 end)) as 库存增加
from testsql
group by Id
sum(case when type='进货' then num else 0 end) as 进货,
sum(case when type='出货' then num else 0 end) as 出货,
(sum(case when type='进货' then num else 0 end)-sum(case when type='出货' then num else 0 end)) as 库存增加
from testsql
group by Id
第二种:
select id,进货,出货,(进货-出货)as 库存增加 from
(select id,sum(case when type='进货'then num else ''end) 进货,
sum(case when type='出货'then num else ''end) 出货
from dbo.testsql group by id)aa
(select id,sum(case when type='进货'then num else ''end) 进货,
sum(case when type='出货'then num else ''end) 出货
from dbo.testsql group by id)aa
- SQL进行行列转换
- SQL的行列转换
- sql 行列转换
- SQL 行列转换查询
- SQL 行列转换查询
- SQL行列转换实战
- SQL 行列转换
- SQL行列转换实战
- sql server 行列转换
- SQL行列转换
- sql server 行列转换
- 经典SQL----行列转换
- SQL Server 行列转换
- 经典SQL行列转换
- sql 行列转换
- SQL行列转换
- 行列转换的SQL
- SQL行列转换
- “寒流”袭击深圳楼市
- vim自己的PHP代码格式化
- 血荐中华最新章节
- TreeView实现类似Outlook在收件箱后面显示新邮件数
- 关于 web.config 里自定义节点的设置和读取
- SQL 行列转换
- 海贼王330在线观看
- 公主小妹第9集a完整播放
- 深入探讨C++中的引用
- 怎样将shell命令的输出信息同时显示在屏幕和保存到日志文件中
- IDTCPSERVER/IDTCPCLIENT设计一个外网和内网信息传递程序
- 梁静茹 - 会呼吸的痛在线试听,梁静茹 - 会呼吸的痛歌词、下载
- xp 终极优化(呕心沥血版)
- 异能高手在校园最新章节