首頁 >資料庫 >mysql教程 >如何在不使用聚合函數的情況下透視 T-SQL 資料?

如何在不使用聚合函數的情況下透視 T-SQL 資料?

Patricia Arquette
Patricia Arquette原創
2025-01-20 10:01:08635瀏覽

How Can I Pivot T-SQL Data Without Using Aggregation Functions?

T-SQL 資料透視:一種無聚合方法

資料轉換通常需要逆透視,通常使用聚合函數來實現。然而,不聚合的旋轉也是可能的。

考慮一個表,其中每行代表一個客戶,包括 CustomerID、DBColumnName 和對應的資料。 目標是透視這些數據,根據每個客戶的 DBColumnName 將其數據組織到單獨的列中。

<code class="language-sql">SELECT CustomerID,
       MIN(CASE WHEN DBColumnName = 'FirstName' THEN Data END) AS FirstName,
       MIN(CASE WHEN DBColumnName = 'MiddleName' THEN Data END) AS MiddleName,
       MIN(CASE WHEN DBColumnName = 'LastName' THEN Data END) AS LastName,
       MIN(CASE WHEN DBColumnName = 'Date' THEN Data END) AS Date
FROM table
GROUP BY CustomerID;</code>

此 T-SQL 查詢使用條件邏輯(CASE 語句)依據 DBColumnName 選取資料。 MIN() 函數確保為每個客戶的欄位僅選擇一個值。 這可以有效地轉換數據,而無需使用傳統意義上的聚合,將每個客戶的屬性組織到不同的欄位中。 此方法避免了處理非數位資料時與聚合相關的潛在問題。

以上是如何在不使用聚合函數的情況下透視 T-SQL 資料?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn