oracle将结果集行转列显示

需求:把上面结果集转换成下面格式

 

其实就是把CHECK_MONTH字段转换成列显示,同时对应的值为RESULT字段。

实现转换的SQL语句:

--行转列
select *
  from TABLENAME pivot(
    max(RESULT) for CHECK_MONTH in (1,2,3,4,5,6,7,8,9,10,11,12)
  )
 where 1 = 1;  --这里可以写查询条件,没有可以直接不要where
 
 
--CHECK_MONTH 即要转成列的字段

--max(RESULT) 此处必须为聚合函数,
 
--in () 对要转成列的每一个值指定一个列名

 

参考链接:https://blog.csdn.net/huay_li/article/details/82914161

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章