日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

Kettle使用_27 行转列与列转行方法汇总

發布時間:2024/9/27 编程问答 31 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Kettle使用_27 行转列与列转行方法汇总 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?Kettle使用_27 行轉列與列轉行方法匯總

需求:通過kettle實現行列轉換與列轉行。

解決方法:主要通過排序記錄、行專列、列轉行、行扁平化組件解決。

Previous work:

這里的數據是學生成績數據和員工數據,詳細數據見文末的補充部分。

場景一(科目名和分數分別算一列):

Step1:新建轉換

Step2:拖個文本文件輸入,該組件位于轉換的輸入分類下。其中Student.txt的內容見下:

配置文件:

配置內容:

配置字段(這里的group對應原始數據里的name、score對應Result):

Step3:拖個排序記錄組件,該組件位于轉換的轉換分類下,通過SHIFT連接文本文件輸入與該組件并配置。

Step4:拖個列轉行(實際是行轉列),該組件位于轉換的轉換分類下。通過SHIFT連接排序組件與當前組件,并配置行轉列組件。

配置如下:

Step5:拖個文本文件輸出,該組件位于轉換的輸出分類下。SHIFT連接行轉列組件與當前組件,并配置該組件見下:

配置文件:

配置字段:

Step6:保存運行驗證轉換。結果見下:

場景二(科目名和分數合并到新列里)之方法一(關鍵值利用group字段):

這里主要在Step4有區別,配置見下:

Step5文件輸出時:

執行結果:

場景二(科目名和分數合并到新列里)之方法二(關鍵值直接手動填寫,分組字段為name即上文的group字段):

這里主要在Step4有區別,配置見下:

執行結果:

場景二(科目名和分數合并到新列里) 之方法三(通過行扁平化),配置見下:

執行結果:

場景二(合并列)之方法四(通過聚合函數),數據和配置見下:

行轉列(聚合函數方式配置):

執行結果;

場景三,列轉行:

這里拖個列轉行組件(該組件位于轉換的轉換分類下),并配置見下:

原始數據:

執行結果:

完整流程示意:

補充部分

詳細數據見下:

多行的數據見下:

Name??? key Subject Result

張冠??? 0?? 語文??? 73

張冠??? 1?? 數學??? 83

張冠??? 2?? 物理??? 93

張冠??? 3?? 英語??? 63

李戴??? 0?? 語文??? 74

李戴??? 1?? 數學??? 84

李戴??? 2?? 物理??? 94

李戴??? 3?? 英語??? 61

葉公??? 0?? 語文??? 59

葉公??? 1?? 數學??? 32

葉公??? 2?? 物理??? 90

葉公??? 3?? 英語??? 45

多列的數據見下:

Name??? Studentid?? chinese math??? physics english

張冠??? 1?? 73? 83? 93? 63

李戴??? 2?? 74? 84? 94? 61

葉公??? 3?? 59? 32? 90? 45

員工數據

department? year??? month?? staff?? src

市場部? 2019??? 1?? 100 1

市場部? 2019??? 1?? 200 2

市場部? 2019??? 2?? 200 1

市場部? 2019??? 3?? 400 1

市場部? 2019??? 3?? 500 2

市場部? 2019??? 3?? 600 3

技術部? 2019??? 1?? 120 1

技術部? 2019??? 1?? 240 2

技術部? 2019??? 2?? 150 3

技術部? 2019??? 2?? 120 1

技術部? 2019??? 2?? 240 2

技術部? 2019??? 3?? 300 1

產品部? 2019??? 3?? 100 1

產品部? 2019??? 3?? 200 2

總結

以上是生活随笔為你收集整理的Kettle使用_27 行转列与列转行方法汇总的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。