76.Oracle数据库SQL开发之 高级查询——使用PIVOT
欢迎转载,转载请标明出处: http://blog.youkuaiyun.com/notbaron/article/details/49975881
PIVOT子句是11g的新增特性,可以再查询输出中将行转为列,同时对数据使用聚合函数。11g也新增了UNPIVOT子句,可以在查询输出中将列旋转为行。
对于了解大量数据的总体趋势是非常有用的。
查询2003年前4个月产品类型#1,#2,#3的销量,注意查询输出的各个数据展示了每个产品类型在每个月的销量和。
store@PDB1> select * from (
selectmonth,prd_type_id,amount from all_sales where year=2003
andprd_type_id in ( 1,2,3))
pivot (sum(amount) for month in ( 1 as jan,2 as feb,3 as mar,4 as apr))
order byprd_type_id;
PRD_TYPE_ID JAN FEB MAR APR
----------- ---------- ------------