---
schema_version: "1"
id: 178ac2e69342bfec0016083fe507a6c9b41f99a6ae8d61b4d0a7fcc28ca980c4
title: 樞紐分析表資料（從資料欄到列）
collection: tableau
version: next
locale: zh-tw
portal_url: https://docs.salesforce.com/tableau/next/zh-tw/public/desktop/pivot.md
canonical_url: https://help.tableau.com/v0.0/public/desktop/zh-tw/pivot.htm
source_site: help.tableau.com
content_type: documentation
content_hash: 32cfbe712ec87294ce9e5939e31508b2495f5ff7dd13af4be28d7f4a3701b7a1
description: Pivot data from crosstab columns to rows, including via custom SQL.
---
[跳至主要內容](#main-content)

# 樞紐分析表資料（從資料欄到列）

有時，在 Tableau 中分析以交叉表格式存儲的資料可能很困難。在使用 Microsoft Excel、文字檔、Google Sheets 和 .pdf 資料來源時，您可以對資料進行樞紐分析，將資料從交叉表格式轉換為分欄格式。如果使用其他資料來源，您可以[使用自訂 SQL 進行樞紐分析 (Tableau Desktop)](#Pivot)。

例如，假設在三個單獨的欄位中有按季度針對三個供應商銷售的裝置數量。您可以對資料進行樞紐分析，以便供應商位於一個欄位中，銷售的裝置數量位於另一個欄位中。

![內容從欄樞紐為列。](/tableau/next/zh-tw/public/desktop/zh-tw/Img/qs_pivot_example.png)

## 對資料進行樞紐分析

設定資料來源之後，在網格中選取兩個或更多欄。按一下欄名稱旁邊的下拉箭頭，然後選取 \[樞紐分析表\] 。將建立名為 \[樞紐分析表欄位名稱\] 和樞紐分析表欄位值\] 的新欄並將其新增到資料來源。新欄將取代您在建立樞紐分析表時選取的原始列。

![欄位上的內容功能表，其中包含樞紐欄位的選項。](/tableau/next/zh-tw/public/desktop/zh-tw/Img/qs_pivot_command.png)

## 新增到樞紐分析表

若要將更多資料新增到樞紐分析表，請選取另一個欄，按一下欄名稱旁邊的下拉箭頭，然後選取 \[將資料新增到樞紐分析表\] 。在開始分析之前，請確保樞紐分析表列和值按預期方式顯示。

![欄位上的內容功能表，其中包含將資料新增至樞紐的選項。](/tableau/next/zh-tw/public/desktop/zh-tw/Img/qs_pivot_add.png)

若要移除樞紐分析表，請按一下樞紐分析表欄名稱旁邊的下拉箭頭，然後選取 \[移除樞紐分析表\] 。

## 樞紐分析表疑難排解

- **檢視中的紅色欄位以及 \[資料\] 窗格中帶有感嘆號的欄位**：由於原始欄位已取代為新的樞紐分析表欄位，因此對檢視中原始欄位的任何引用將不再起作用。它們會致欄位在檢視中變為紅色，或在 \[資料\] 窗格中的欄位旁邊顯示紅色感嘆號。
- **網格中的空值：**舉例來說，如果在擷取重新整理中移除了樞紐分析表中使用的所有原始欄位，則樞紐分析表欄位中會顯示空值。
- **無樞紐分析表選項：**當您在單一 Microsoft Excel、文字檔、Google Sheets 和 .pdf 資料來源中選取兩個或更多列時，將出現樞紐分析表。如果在 Tableau Desktop 中使用其他資料來源，您可以使用自訂 SQL 進行樞紐分析。

## 使用自訂 SQL 進行樞紐分析 (Tableau Desktop)

即使未使用 Excel、文字檔、Google Sheets 和 .pdf 資料來源，您也可以使用自訂 SQL 對資料進行樞紐分析。在自訂 SQL 查詢中使用 UNION ALL 運算子時，可以獲取不同欄中的值並將它們放到新欄中。

例如，假設您有一個名為 **Contest** 的表。

**Contest**

| Runner | Start Time | End Time |
| --- | --- | --- |
| Amanda | 9/3/2016 3:04 PM | 9/3/2016 3:25 PM |
| Oscar | 9/3/2016 3:04 PM | 9/3/2016 3:21 PM |
| William | 9/3/2016 3:04 PM | 9/3/2016 3:16 PM |

若要在 Tableau 中優化此資料的分析，您可以使用下面的自訂 SQL 查詢，對 \[Start Time\] 和 \[End Time\] 欄進行樞紐分析，使其值在單個欄中。

Select \[Runner\]

, 'Start' as \[Action\]

, \[Start Time\] as \[Time\]

From \[Contest\]

Union ALL

Select \[Runner\]

, 'End' as \[Action\]

, \[End Time\] as \[Time\]

From \[Contest\]

上述自訂 SQL 查詢執行以下操作：

- 對 **\[Start Time\]** 欄標題進行樞紐分析，使其轉換為一個名為 **\[Start\]** 的字串值，並將該值新增到一個名為 **\[Action\]** 的新欄中。
- 對 **\[End Time\]** 欄標題進行樞紐分析，使其轉換為一個名為 **\[End\]** 的字串值，並將該值新增到一個名為 **\[Action\]** 的新欄中。
- 對 **\[Start Time\]** 和 **\[End Time\]** 列進行樞紐分析，使其值在一個名為 **\[Time\]** 的新欄中。

下表顯示了此自訂 SQL 查詢的結果。

<table style="width: 80%;mc-table-style: url('Resources/TableStyles/Basic-Border-Light.css');" class="TableStyle-Basic-Border" cellspacing="0"><colgroup><col class="TableStyle-Basic-Border-Column-Column1"><col class="TableStyle-Basic-Border-Column-Column1"><col class="TableStyle-Basic-Border-Column-Column1"></colgroup><thead><tr class="TableStyle-Basic-Border-Head-Header1"><th class="TableStyle-Basic-Border-HeadE-Column1-Header1">Runner</th><th class="TableStyle-Basic-Border-HeadE-Column1-Header1">Action</th><th class="TableStyle-Basic-Border-HeadD-Column1-Header1">Time</th></tr></thead><tbody><tr class="TableStyle-Basic-Border-Body-Body1"><td class="TableStyle-Basic-Border-BodyE-Column1-Body1">Amanda</td><td class="TableStyle-Basic-Border-BodyE-Column1-Body1"><p>Start</p></td><td class="TableStyle-Basic-Border-BodyD-Column1-Body1">9/3/2016 3:04 PM</td></tr><tr class="TableStyle-Basic-Border-Body-Body1"><td class="TableStyle-Basic-Border-BodyE-Column1-Body1">Oscar</td><td class="TableStyle-Basic-Border-BodyE-Column1-Body1">Start</td><td class="TableStyle-Basic-Border-BodyD-Column1-Body1">9/3/2016 3:04 PM</td></tr><tr class="TableStyle-Basic-Border-Body-Body1"><td class="TableStyle-Basic-Border-BodyE-Column1-Body1">William</td><td class="TableStyle-Basic-Border-BodyE-Column1-Body1">Start</td><td class="TableStyle-Basic-Border-BodyD-Column1-Body1">9/3/2016 3:04 PM</td></tr><tr class="TableStyle-Basic-Border-Body-Body1"><td class="TableStyle-Basic-Border-BodyE-Column1-Body1">Amanda</td><td class="TableStyle-Basic-Border-BodyE-Column1-Body1">End</td><td class="TableStyle-Basic-Border-BodyD-Column1-Body1">9/3/2016 3:25 PM</td></tr><tr class="TableStyle-Basic-Border-Body-Body1"><td class="TableStyle-Basic-Border-BodyE-Column1-Body1">Oscar</td><td class="TableStyle-Basic-Border-BodyE-Column1-Body1">End</td><td class="TableStyle-Basic-Border-BodyD-Column1-Body1">9/3/2016 3:21 PM</td></tr><tr class="TableStyle-Basic-Border-Body-Body1"><td class="TableStyle-Basic-Border-BodyB-Column1-Body1">William</td><td class="TableStyle-Basic-Border-BodyB-Column1-Body1">End</td><td class="TableStyle-Basic-Border-BodyA-Column1-Body1">9/3/2016 3:16 PM</td></tr></tbody></table>

### 使用自訂 SQL 進行資料樞紐分析

1. 連線到資料。
2. 按兩下左側窗格中的 \[新建自訂 SQL\] 選項。有關詳情，請參閱[連線到自訂 SQL 查詢](https://help.tableau.com/v0.0/public/desktop/zh-tw/customsql.htm)。
3. 在 \[編輯自訂 SQL\] 對話方塊中，複製並貼上以下自訂 SQL 查詢，並將內容取代為關於表的資訊：
    
    Select \[_Static Column_\]
    
    , '_New Value (from Column Header 1)_' as \[_New Column Header_\]
    
    , \[_Pivot Column Values 1_\] as \[_New Values_\]
    
    From \[_Table_\]
    
    Union ALL
    
    Select \[_Static Column_\]
    
    , '_New Value (from Column Header 2_' as \[_New Column Header_\]
    
    , \[_Pivot Column Values 2_\] as \[_New Values_\]
    
    From \[_Table_\]
    
    Union ALL
    
    Select \[_Static Column_\]
    
    , '_New Value (from Column Header 3_' as \[_New Column Header_\]
    
    , \[_Pivot Column Values 3_\] as \[_New Values_\]
    
    From \[_Table_\]
    
    如果以下條件為真：
    
    - _Static Column（靜態欄）_： _Table（表）_中列（維度和度量）的逗號分隔清單，不應該包括在樞紐分析表中。
    - _New Value (from Column Header 1-3)（新值（來自欄標題 1-3））_：您為原始欄標題提供的新名稱，用作樞紐分析表中的列值。
    - _Pivot Column Values 1-3（樞紐分析表列值 1-3）_：需要對其值進行樞紐分析以轉換成單一列的列。
    - _New Column Header（新欄標題）_：為新欄提供的名稱，此新欄包含 _\[New Value (from Column Header 1-3)\] （新值（來自欄標題 1-3））_中的新列值。
    - _New Values（新值）_： 為新欄提供的名稱，此新欄包含 _\[Pivot Column Values 1-3\] （樞紐分析表欄值 1-3）_中的原始值。
    - _Table（表）_： 連線到的表。
4. 按一下 \[OK\] （確定）。