pivot函數(shù)用法 Oracle列轉(zhuǎn)行,行轉(zhuǎn)列?
Oracle列轉(zhuǎn)行,行轉(zhuǎn)列?oracle下可以用函數(shù)decode處理:select 產(chǎn)品名稱,sum(decode(季度,"第一季度",銷售額,0)) 第一季度銷售額,sum(decode(季度,"第
Oracle列轉(zhuǎn)行,行轉(zhuǎn)列?
oracle下可以用函數(shù)decode處理:
select 產(chǎn)品名稱,
sum(decode(季度,"第一季度",銷售額,0)) 第一季度銷售額,
sum(decode(季度,"第二季度",銷售額,0)) 第二季度銷售額,
sum(decode(季度,"第三季度",銷售額,0)) 第三季度銷售額,
sum(decode(季度,"第四季度",銷售額,0)) 第四季度銷售額,
from 表名
group by 產(chǎn)品名稱
oracle行轉(zhuǎn)列函數(shù)?
推薦用WM_CONCAT函數(shù)SELECT A.STD, WM_CONCAT(A.F3) NEW_RESULFROM (SELECT STD, F3FROM (SELECT STD, F1 F3FROM TABLE_AUNION ALLSELECT STD, F2 F3 FROM TABLE_A) A) AGROUP BY A.STD
oracle這種數(shù)據(jù)pivot或者其他怎么將key做字段str作為值來行轉(zhuǎn)列(str值是字符串?
SELECT*FROM(SELECTkey,strFROMtablet)pivot(max(str)forkeyin("hyl","ls","ryhl","yqwd"))
oracle列名不確定,行轉(zhuǎn)列?
select decode(t.rn,1,t.單位名稱) as 單位名稱1 ,
decode(t.rn,2,t.單位名稱) as 單位名稱2,
decode(t.rn,3,t.單位名稱) as 單位名稱3,
from (
select c.單位名稱,to_number() over(partition by c.單位名稱) as rn
from table1 a,table2 b,table3 c
where a.id1 = b.id1
and b.id2=c.id2
) t
這是在知道多少行記錄數(shù)的情況下這樣實現(xiàn),如果不知道多少行,則最好用個中間表,搞個語句塊,把相關(guān)的數(shù)先放到中間表在進行處理。
SQL Server數(shù)據(jù)庫PIVOT函數(shù)的使用詳解?
PIVOT用于將列值旋轉(zhuǎn)為列名(即行轉(zhuǎn)列),在SQL Server 2000可以用聚合函數(shù)配合CASE語句實現(xiàn)PIVOT的一般語法是:PIVOT(聚合函數(shù)(列) FOR 列 in (…) )AS P完整語法:table_sourcePIVOT(聚合函數(shù)(value_column)FOR pivot_columnIN(<column_list>)) UNPIVOT用于將列明轉(zhuǎn)為列值(即列轉(zhuǎn)行),在SQL Server 2000可以用UNION來實現(xiàn)完整語法:table_sourceUNPIVOT(value_columnFOR pivot_columnIN(<column_list>)) 注意:PIVOT、UNPIVOT是SQL Server 2005 的語法,使用需修改數(shù)據(jù)庫兼容級別 在數(shù)據(jù)庫屬性->選項->兼容級別改為 90具體實例地址我私信發(fā)給你