作者f127doggpig (阿贤)
看板Database
标题[SQL ] MS SQL PIVOT语法
时间Mon Apr 9 08:43:53 2012
各位好 目前我用DECLARE在@TEMP增加栏位
DECLARE @Temp TABLE ([FeederName] nvarchar(50) , [Longitude] decimal(7,4) ,
[Latitude] decimal(7,4),[ORDER] NVARCHAR(10),[FeederCode_NEW] NVARCHAR(20))
INSERT INTO @Temp ( [FeederName],[Longitude],[Latitude],[ORDER],[FeederCode_NEW] )select [FeederName],[Longitude],[Latitude] ,[ORDER],[FeederCode_NEW]
from [Tlis].[dbo].[TaipowerAccount]
每一笔的资料
[FeederName]可能是一样[FeederCode_NEW]也会是一样,但是藉由[Longitude],
[Latitude],[ORDER]来区分
也就是
[FeederName],[Longitude],[Latitude],[ORDER],[FeederCode_NEW]
A , 120 , 50 , 1 , WS
A , 121 , 12 , 5 , WS
B , 120 , 50 , 3 , SD
B , 52 , 12 , 4 , SD
C , 120 , 50 , 1 , WE
C , 52 , 12 , 3 , WE
: : : : :
:
Z
PIVOT 之後
变成以相同的[Longitude],[Latitude]列出重复的前6笔资料分别有他们的[FeederName],
[ORDER],[FeederCode_NEW]
也就是
120,50,A,1 ,WS,B,3,SD,C,1,WE,NULL,NULL,NULL,NULL,NULL....... 补满第6笔
121,12,A,12,WS,,NULL,NULL,NULL,NULL,........................ 补满第6笔
我该如何pivot呢? 谢谢
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 140.127.114.241