2
我正在使用SQL Server 2012,我需要獲取以下輸出的幫助。我的表結構如下:在編寫數據透視查詢時需要幫助以從不同的select語句中選擇列
declare @TestTable table (MaterialCode char(5), ItemCode char(5), ItemName varchar(50))
insert into @TestTable values ('AA-01', 'A0001', 'iPhone')
insert into @TestTable values ('AA-02', 'A0001', 'iPad')
insert into @TestTable values ('AA-03', 'A0001', 'iPod')
insert into @TestTable values ('AA-01', 'B0001', 'Galaxy Tab')
insert into @TestTable values ('AA-02', 'B0001', 'Galaxy Note')
insert into @TestTable values ('AA-01', 'C0001', 'Nokia Lumnia')
insert into @TestTable values ('AA-02', 'C0001', 'Motorola')
insert into @TestTable values ('AA-03', 'C0001', 'Samsung S3')
insert into @TestTable values ('AA-04', 'C0001', 'Sony')
--select * from @TestTable
select MaterialCode, ItemCode as [A_ItemCode], ItemName as [A_ItemName]
from @TestTable where ItemCode='A0001'
select MaterialCode, ItemCode as [B_ItemCode], ItemName as [B_ItemName]
from @TestTable where ItemCode='B0001'
select MaterialCode, ItemCode as [C_ItemCode], ItemName as [C_ItemName]
from @TestTable where ItemCode='C0001'
和輸出,我需要應該從以上三個select語句,這應該是如下產生的:
正如你可以看到,當有沒有記錄,那裏顯示NULL。任何人都可以幫助我獲得這個輸出。 TIA。
編輯
@JohnLBevan,我想你的轉動方式,當我有另一個紀錄是具有ItemCode = D0001
insert into @TestTable values ('AA-05', 'D0001', 'Test1')
現在連這個紀錄被顯示爲
AA-05 NULL NULL NULL NULL NULL NULL
如何避免這些類型的記錄。
+1這裏是一個現場演示:[** Live Demo **](http://data.stackexchange.com/stackoverflow/query/edit/84455) –
哦;我不知道堆棧交換有這個功能;不錯。謝謝@MahmoudGamal。 – JohnLBevan
您也可以查詢stackoverflow.com和其他stackexchange站點的所有數據。但還有另一個網站比sql演示更好:[** SQL Fiddle **](http://www.sqlfiddle.com/)。 –