Tabular Transformation 連接器 同時提供 pivot 和 unpivot 指令。為了確保正確使用這些指令,我們已概述了每個指令要處理的使用情況。
取消樞紐
unpivot 指令適用於單一行資料存在多個資料列的資料集。此佈局常用於包含多個時間段作為資料列的財務資料。以下是一個可套用 unpivot 指令的範例資料集。
未使用 unpivot 指令前的資料:
YEAR,MEASURE,PRODUCT,MARKET,SCENARIO,JAN,FEB,MAR,APR,MAY,JUN,JUL,AUG,SEP,OCT,NOV,DEC
FY20,Sales,100-10,New York,Actual,100,200,300、400,500,600,700,800,900,1000,1100,1200
FY20,Sales,100-10,Massachusetts,Actual,125,225,325,425,525,625,725,825,925,1025,1125,1225 取消轉軸指令後的資料:
YEAR,MEASURE,PRODUCT,MARKET,SCENARIO,Period,Amount
FY20,Sales,100-10,Massachusetts,Actual,JAN,125
FY20,Sales,100-10,Massachusetts,Actual、FEB,225
FY20,銷售額,100-10,麻州,實際,MAR,325
FY20,銷售額,100-10,麻州,實際,APR,425
FY20,銷售額,100-10,麻州,實際、MAY,525
FY20,銷售額,100-10,麻州,實際,JUN,625
FY20,銷售額,100-10,麻州,實際,JUL,725
FY20,銷售額,100-10,麻州,實際、AUG,825
FY20,銷售額,100-10,麻州,實際,SEP,925
FY20,銷售額,100-10,麻州,實際,OCT,1025
FY20,銷售額,100-10,麻州,實際、NOV,1125
FY20,銷售額,100-10,麻州,實際,DEC,1225
FY20,銷售額,100-10,紐約,實際,JAN,100
FY20,銷售額,100-10,紐約,實際,FEB、200
FY20,Sales,100-10,New York,Actual,MAR,300
FY20,Sales,100-10,New York,Actual,APR,400
FY20,Sales,100-10,New York,Actual,MAY,500
FY20,Sales、100-10,New York,Actual,JUN,600
FY20,Sales,100-10,New York,Actual,JUL,700
FY20,Sales,100-10,New York,Actual,AUG,800
FY20,Sales,100-10,New York、實際,SEP,900
FY20,銷售,100-10,New York,實際,OCT,1000
FY20,銷售,100-10,New York,實際,NOV,1100
FY20,銷售,100-10,New York,實際,DEC,1200 指令參數
unpivot 命令有幾個參數:
| 分隔符號 | 用於分隔資料檔案中欄位的字元 |
| 匯總運算符號 | SUM 或 NONE。使用 SUM 將所有欄位值相同的記錄聚合為單一聚合資料點;選擇「無」會以每筆記錄的唯一資料值建立重複資料列。在大多數情況下,建議使用 SUM。 |
| 新列標題 | 要建立的新列的標題。行將填入要取消支點的列中的值。在上例中,這是 Period 欄位。 |
| 資料列標頭: | 欄標題:將以未轉化值填充的列的標題。在上例中,這是「金額」欄位。 |
| 解除支點的欄位 |
本節可由下列任何參數控制。您只需指定其中一個選項:
|
使用 Unpivot 的提示
- 開始和結束參數不應與資料標頭參數一起使用。
- 使用開始和結束支點列名稱時,可輸入第一列和最後一列的名稱。使用這組參數表示在指定的開始列和結束列之間的所有列將不轉軸。
- 使用開始和結束樞軸列索引參數時,可輸入第一列和最後一列的列號。列數以零為基礎,這表示檔案中的第一列為第零列 (0)。與起始/結束欄名稱參數一樣,使用這組參數意味著指定的起始和結束欄之間的所有欄將不被樞軸化。
- 使用任一起始枢轴列参数时,将倒数结束枢轴列参数字段留空将指示 Command 提取指定的起始枢轴列右侧的所有列。這對於由滾動預測產生的資料集特別有用。
樞紐
Pivot 指令適用於存在單一資料列,且一列或多列中的欄位值需要表示為資料列的資料集。以下是一個可套用 unpivot 指令的資料集範例。
樞軸指令前的資料
YEAR,MEASURE,PRODUCT,MARKET,SCENARIO,Period,Amount
FY20,Sales,100-10,Massachusetts,Actual,JAN,125
FY20,Sales,100-10,Massachusetts,Actual,FEB、225
FY20,銷售額,100-10,麻州,Actual,MAR,325
FY20,銷售額,100-10,麻州,Actual,APR,425
FY20,銷售額,100-10,麻州,Actual,MAY,525
FY20、FY20,Sales,100-10,Massachusetts,Actual,JUN,625
FY20,Sales,100-10,Massachusetts,Actual,JUL,725
FY20,Sales,100-10,Massachusetts,Actual,AUG,825
FY20,Sales、100-10,Massachusetts,Actual,SEP,925
FY20,Sales,100-10,Massachusetts,Actual,OCT,1025
FY20,Sales,100-10,Massachusetts,Actual,NOV,1125
FY20,Sales,100-10、
FY20,COGS,100-10,Massachusetts,Actual,JAN,100
FY20,COGS,100-10,Massachusetts,Actual,FEB,200
FY20,COGS,100-10、麻州,Actual,MAR,300
FY20,COGS,100-10,麻州,Actual,APR,400
FY20,COGS,100-10,麻州,Actual,MAY,500
FY20,COGS,100-10,麻州、Actual,JUN,600
FY20,COGS,100-10,Massachusetts,Actual,JUL,700
FY20,COGS,100-10,Massachusetts,Actual,AUG,800
FY20,COGS,100-10,Massachusetts,Actual、SEP,900
FY20,COGS,100-10,麻州,實際,OCT,1000
FY20,COGS,100-10,麻州,實際,NOV,1100
FY20,COGS,100-10,麻州,實際,DEC,1200 Pivot 指令有幾個參數:
| 分隔符號 | 用於分隔資料檔案中欄位的字元。 |
| 彙總運算符號 | SUM 或 NONE。使用 SUM 將具有相等行值的記錄折疊為單一資料記錄。選擇 「無 」將為單一相等行值集建立多行。每一行都會填入被樞軸化的行的欄位中,但在其他欄位中則為空。建議使用 SUM。 |
| 樞軸列 |
行值將樞軸化為列作為標頭的列。將為所選列行中的每個唯一值建立新列。必須至少指定一列,但如果指定了其他列,則指定的每一列的值組合將被創建為新列。 在上述資料範例中,如果選擇測量列,則會建立稱為 Sales 和 COGS 的新列。如果選擇測量和期間,則會建立 24 個新列:Sales-Jan、Sales-Feb、Sales-Mar,依此類推,直到 COGS-DEC。 |
| 樞軸分隔符 | 在建立由 Pivot 建立的新列的標題時應使用的分隔符。此參數僅在指定多個資料樞軸列時適用。 |
| 要聚合的資料 | 這是要透視的資料集中的資料列。在上例中,這是「金額」欄位。 |
| 資料列 | 原始資料集中在進行資料透視時應當保留為唯一值的列清單。在此參數中輸入的欄中值的每個唯一組合將在透視結果中表示為一行。 |
透視測量列
Amount 欄位指定為 Data to Aggregate 參數,Year、Product、Market、Scenario 和 Period 列指定為 Rows 參數。
YEAR,PRODUCT,MARKET,SCENARIO,Period,Sales,COGS
FY20,100-10,Massachusetts,Actual,APR,425,400
FY20,100-10,Massachusetts,Actual,AUG,825,800
FY20,100-10、麻州,Actual,DEC,1225,1200
FY20,100-10,Massachusetts,Actual,FEB,225,200
FY20,100-10,Massachusetts,Actual,JAN,125,100
FY20,100-10,Massachusetts、Actual,JUL,725,700
FY20,100-10,Massachusetts,Actual,JUN,625,600
FY20,100-10,Massachusetts,Actual,MAR,325,300
FY20,100-10,Massachusetts,Actual,MAY、525,500
FY20,100-10,Massachusetts,Actual,NOV,1125,1100
FY20,100-10,Massachusetts,Actual,OCT,1025,1000
FY20,100-10,Massachusetts,Actual,SEP,925,900
透視測量列,從行中排除週期
金額欄位是指定給匯總資料參數,年份、產品、市場和情境是指定給行參數 。由於期間列被排除在外,因此結果彙總了所有期間的資料,適用於其餘列的每個唯一組合。
YEAR,PRODUCT,SCENARIO,MARKET,Sales,COGS
FY20,100-10,Actual,Massachusetts,8100,7800
樞軸轉動測量和週期列
金額欄位指定為「資料匯總」參數,年份、產品、市場和情境欄位指定為「行數」參數。
年份,產品,情況,市場,銷售-JAN,銷售-FEB,銷售-MAR,銷售-APR,銷售-MAY,銷售-JUN,銷售-JUL,銷售-AUG,銷售-SEP,銷售-OCT,銷售-NOV,銷售-DEC,COGS-JAN,COGS-FEB,COGS-MAR,COGS-APR,COGS-MAY、COGS-JUN,COGS-JUL,COGS-AUG,COGS-SEP,COGS-OCT,COGS-NOV,COGS-DEC
FY20,100-10,Actual,Massachusetts,125,225,325,425,525,625,725,825,925,1025,1125,1225,100,200,300,400,500,600,700,800,900,1000,1100,1200