這是我的存儲過程查詢以獲取第一個表中的數據。使用數據透視表將重複的行值隱藏到列中
SELECT [Item] = t3.Item,
[Name] = t2.Name,
[Value] = t1.value
INTO #Result
FROM table1 t1
INNER JOIN table2 t2 ON t2.IsDeleted = 0
INNER JOIN table3 t3 ON t3.IsDeleted = 0 AND t3.Item_ID = @Id
WHERE t1.Item_ID = @Id
GROUP BY
t1.value,
t2.Name,
t3.Item
我在臨時表中有以下數據。
| Item | Name | Value |
--------------------------
| item1 | Name 1 | 2 |
| item2 | Name 1 | 4 |
| item3 | Name 1 | 5 |
| item1 | Name 2 | 6 |
| item2 | Name 2 | 3 |
| item3 | Name 2 | 1 |
| item1 | Name 3 | 7 |
| item2 | Name 3 | 4 |
| item3 | Name 3 | 2 |
欲名稱1,名稱2,名稱3作爲列和它們的value
靠在相應item.Data在表是dynamic.There可以是任何數量的Items
和任何數量的Name
。對於每個Name
和Item
,它們是可以是單個數字的值。 Items
是相同的每Name
謝謝
我需要像下面的東西。
| Item | Name 1 | Name 2 | Name 3|
------------------------------------
| item1 | 2 | 6 | 7 |
| item2 | 4 | 3 | 4 |
| item3 | 5 | 1 | 2 |
爲什麼存儲過程標記? – jarlh
GROUP BY可以使用。將使用所有的dbms產品。 – jarlh
因爲我需要在存儲過程中使用它。如果你想我可以發佈我的存儲過程。 –