(转载)SQL语句,纵列转横列
2013-10-24 18:42
357 查看
SQL语句,纵列转横列
Feed: 大富翁笔记
Title: SQL语句,纵列转横列 Author: wzmbox
Comments
sTable.db
库位 货物编号 库存数
1 0101 50
1 0102 60
1 0103 50
2 0101 90
2 0103 100
2 0111 30
3 0101 120
3 0102 110
4 0101 11
只列出表中库位为1、2、3的数据,格式如下:
货物编号 库位1 库位2 库位3
0101 50 90 120
0102 60 110
0103 50 100
0111 30
请问用一句sql语句怎么实现?
select a.货物编号,sum(b.库存数),sum(c.库存数),sum(d.库存数)
from stable a
left join (select 货物编号, 库存数 from stable where 库位=1)b on a.货物编号=b.货物编号
left join (select 货物编号, 库存数 from stable where 库位=2)c on a.货物编号=c.货物编号
left join (select 货物编号, 库存数 from stable where 库位=3)c on a.货物编号=d.货物编号
group by a.货物编号
Feed: 大富翁笔记
Title: SQL语句,纵列转横列 Author: wzmbox
Comments
sTable.db
库位 货物编号 库存数
1 0101 50
1 0102 60
1 0103 50
2 0101 90
2 0103 100
2 0111 30
3 0101 120
3 0102 110
4 0101 11
只列出表中库位为1、2、3的数据,格式如下:
货物编号 库位1 库位2 库位3
0101 50 90 120
0102 60 110
0103 50 100
0111 30
请问用一句sql语句怎么实现?
select a.货物编号,sum(b.库存数),sum(c.库存数),sum(d.库存数)
from stable a
left join (select 货物编号, 库存数 from stable where 库位=1)b on a.货物编号=b.货物编号
left join (select 货物编号, 库存数 from stable where 库位=2)c on a.货物编号=c.货物编号
left join (select 货物编号, 库存数 from stable where 库位=3)c on a.货物编号=d.货物编号
group by a.货物编号
相关文章推荐
- 连接不同字符集编码Oracle问题处理过程
- 使用C#打造通用的数据库连接类
- mybatis拦截器实现数据库表水平切分
- 用log4net把日志记录到SQLite数据库
- net中应用sqlit时加载其dll的问题
- View Horizon Mirage安装手册(三)——Mirage Management安装 推荐
- Oracle官方文档下载与旧版本下载
- 高性能的MySQL(6)查询慢与重构查询
- 高性能的MySQL(6)查询慢与重构查询
- Oracle根据时间将一条记录进行分割成多条(开始时间与结束时间跨几天就分割成几条)
- DB2错误信息(按sqlcode排序)
- mySql与sql server 2005用sql语句创建表的不同之处
- 在线配置工具的某段sql
- SQL Server 联接提示、查询提示、表提示
- oracle 常用函数大全
- [转]Redis配置文件各项参数说明及性能调优
- 新手学习oracle之索引组织表(IOT)
- 【Postgres】dump数据库备份与还原
- Deprecated: mysql_escape_string(): This function is deprecated; use mysql_real_escape_string() inste
- SQL中的Where,Group By,Order By和Having