如何在 SQL Server 2000 中透視資料
面臨使用 SQL Server 2000 將資料轉換為更具透視結構的格式的挑戰?讓我們深入研究一個解決方案,避免動態 SQL 和無效方法的陷阱,確保資料操作的準確性和效率。
理解問題
想像您有兩個表:包含產品資訊的產品和為每個產品提供附加元資料的產品元。您的目標是建立一個結果集,該結果集對資料進行透視,以表格格式呈現,顯示產品名稱以及對應的元資料值。
解
為了實現這種轉換,我們將結合使用CASE 表達式和GROUP BY 中的聚合函數子句:
SELECT P.ProductId, P.Name , MIN(CASE WHEN PM.MetaKey = 'A' THEN PM.MetaValue END) AS A , MIN(CASE WHEN PM.MetaKey = 'B' THEN PM.MetaValue END) AS B , MIN(CASE WHEN PM.MetaKey = 'C' THEN PM.MetaValue END) AS C FROM Products AS P JOIN ProductMeta AS PM ON PM.ProductId = P.ProductId GROUP BY P.ProductId, P.Name
解釋
透過利用這種方法,您可以有效地在 SQL Server 2000 中轉換數據,避免動態 SQL 的限制,並產生滿足您的轉換要求的乾淨且可用的結果集要求。
以上是如何在沒有動態 SQL 的情況下在 SQL Server 2000 中透視資料?的詳細內容。更多資訊請關注PHP中文網其他相關文章!