Kettle使用_31 CSV文件输入跳过前几(首)行之过滤记录
Kettle使用_31 CSV輸入結合過濾記錄
需求:對csv文件輸入不在第一行的情況進行數據裝載,這里假定數據在第6行。
解決方法:通過CSV文件輸入結合過濾記錄組件,即在CSV文件輸入里指定行號,在過濾記錄里通過條件刷選記錄并輸出到文件或者數據庫內。
#Ⅱ 步驟-Step by Step
-- 1 準備個csv文件,內容見下,列分隔符是制表符即"\t"(可以是任意單字符分隔符),行分隔符是換行("LF")。
12? 36? 78
17? 91? 16
24? 83? 50
14? 38? 67
id? seq age name
1?? 2?? 18? John
2?? 3?? 37? Mike
3?? 4?? 27? Doris
# 注,上述準備的數據列數并不統一,即第5行之前都是3列,之后是4列。
-- 2 打開Kettle,新建立個轉換,從"輸入"里拖個"CSV文件輸入"組件,雙擊該組件進行配置。
-- 3 詳細配置內容有:
??? a) 文件名
??? b) 列分隔符
??? c) 在"行號字段"里起個名字,如rn
??? d) 字段映射里填寫字段名和類型
-- 4 在"流程"里拖個"過濾記錄"組件,SHIFT連接"CSV文件輸入"與"過濾記錄"組件,雙擊該組件進行配置。
??? a) 編寫記錄過濾條件,即rn>=6,
??? b) 指定TRUE時對應的步驟,此步驟連接文本輸出或者表輸出。當前演示為表輸出。
-- 5 在"輸出"里拖個"表輸出"組件,SHIFT連接"過濾記錄"與"表輸出"組件,雙擊該組件進行配置。
??? a) 勾選"指定數據庫字段"
??? b) 在"數據庫字段"選項選中rn后刪除該字段
-- 6 保存轉換后運行驗證結果
完整流程:
總結
以上是生活随笔為你收集整理的Kettle使用_31 CSV文件输入跳过前几(首)行之过滤记录的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 个人所得税是每个人都有吗
- 下一篇: Oracle ETL日志审计存储过程示例