列转行

简介:
我现在的表如下:

产品名称    销售额  季度
奶酪          50     第一季度
奶酪          60     第二季度
啤酒          50     第二季度
啤酒          80     第四季度
。。。
。。。
想转换成如下格式
产品名称 第一季度销售额 第二季度销售额 第三季度销售额 第四季度销售额
奶酪          50               60           0              0
啤酒           0               50           0              80

请问该如何转换呢~产品名称的数据量很大,非常感激,Oracle的~
解答:::::如下::::
oracle下可以用函数decode处理:

select 产品名称,
sum(decode(季度,'第一季度',销售额,0)) 第一季度销售额,
sum(decode(季度,'第二季度',销售额,0)) 第二季度销售额,
sum(decode(季度,'第三季度',销售额,0)) 第三季度销售额,
sum(decode(季度,'第四季度',销售额,0)) 第四季度销售额,
from 表名 

group by 产品名称; 












本文转自东方之子736651CTO博客,原文链接: http://blog.51cto.com/ecloud/1288638,如需转载请自行联系原作者




相关文章
|
移动开发 关系型数据库 Oracle
|
5月前
|
SQL 数据处理
简单行转列
本文介绍了基于配送订单表的数据处理方法,包括使用 `collect_list`、`collect_set` 和 `sort_array` 函数实现行转列操作。通过 SQL 查询,实现了骑手 ID 和配送品类的统计,并对数据进行了去重和排序处理。此外,还提供了相关函数的详细说明和示例,以及数据准备的 SQL 语句。最后推荐了更多关于行转列和列转行的相关文章。
|
XML 数据格式
行转列或列转行写法
原文: 行转列或列转行写法 两种方式: /* 实现行转列 a name objec score a EN 89 a CH 78 a HO 99 b EN 34 b CH 88 b HO 66 要求输出结果...
907 0
|
SQL Go 数据库
使用 PIVOT 和 UNPIVOT 行转列
declare @sql nvarchar(max)='' declare @sql_column nvarchar(max)='' select  @sql_column = @sql_column + '['+a.
1174 0
|
SQL 搜索推荐 程序员
explode 列转行的 2 个常用技巧!
explode 列转行的 2 个常用技巧!
explode 列转行的 2 个常用技巧!
|
SQL
sql 行转列 PIVOT 列转行 UNPIVOT
原文: sql 行转列 PIVOT 列转行 UNPIVOT 一: 现有表一(t_table1),想转为表二(t_table2)的格式。 表一: 年 公司 收入 2013 公司1 12...
1466 0

热门文章

最新文章