轉載:https://www.cnblogs.com/BlueBreeze/p/datastage_series-Pivot_Enterprise.html
Pivot_Enterprise主要用來進行行列轉換。
如下兩表數據的相互轉換
1 示例
2 操作
在接下來的例子都是用到三個組件,源文件、pivot_Enterprise、目標文件,如Figure 1所示。
Figure 1 所用到的組件
2.1 列轉行
即從A->B。這裏主要是Pivot_Enterprise的配置。
Stage選項卡中Properties選項卡的Pivot Type設置爲Horizontal。
Properties中添加一行,自定義個列名,設置好精度等。雙擊Derivation,選擇需要列轉行的列。
Figure 2 水平轉換Pivot設置
輸出映射。選擇ID和合並的那一列,這樣最終結果就是2列了。
Figure 3 水平轉換結果映射
2.2 行轉列
設置與之前的類似。執行的結果類似與sql中的groupby,select後面可以使用聚合函數。如Figure 4就添加了一個平均值的列。
值得注意的是圖中標紅的位置,我們需要根據數據的情況設置Array Size的大小。根據最開始展示的B的數據,我們看到ID爲a的記錄有3條,所以設置爲3。
Figure 4 行轉列Pivot設置
設置Array Size大小爲3之後,在【輸出】【映射】選項卡中,就會自動生成3列。我們一一映射到目標即可。
Figure 5 垂直轉換映射
至此,行列轉換就完成了。
本文鏈接:http://www.cnblogs.com/BlueBreeze/p/datastage_series-Pivot_Enterprise.html