1:列轉行
2:列轉行
3:去除重覆記錄
步驟名稱:保持唯一性
增加計數器到輸出?:當勾選了此項,並在計數器欄位後給予了名稱,則將會在該字段下顯示去掉的重複行數。
欄位名稱:用來去重的字段,可選多個字段,表示多個欄位都相同時表示重複。
該功能類似與sql中的distinct關鍵字。
4:增加序列
乙個序列是在某個起始值和增量的基礎之上,經常改變的整數值。可以使用資料庫定義好的序列,也可以使用kettle決定的序列。
kettle序列在同乙個轉換中是唯一使用的,每一次轉換執行的時候,序列的值又會重新迴圈一次,從開始值開始。
使用資料庫序列:
連線名稱:選擇資料庫存在的連線名稱。
序列名稱:資料庫序列的名稱。
使用計數器來計算序列:如果想用kettle生成的序列,使用此項。
計數器名稱(可選):如果乙個轉換中多個步驟生成同樣的值名稱,這個選項允許你指定計數器名稱,避免按照先後順序通過多個步驟。
起始值:序列的起始值。
增量:序列的步長。
最大值:序列的最大值。
5:字段選擇
字段選擇中包含有三個頁籤:選擇和修改,移除,元資料
選擇和修改:用於獲取欄位名稱,並可以對名稱進行修改,還可以修改其長度和精度。
移除:移除欄位後該字段將不會被預覽檢視到。
元資料:可以修改欄位名稱,以及資料型別,長度,精度,格式等資訊。但是,當在選擇和修改中將某一字段的名稱修改,要想
在元資料中繼續修改則選擇修改前的原欄位名稱,會提示找不到該欄位,需要選擇在選擇修改頁籤中已經修改成的名稱。
6:字串替換
將某個欄位的某些字元替換成我們給定的字元。
首先選擇輸入流欄位,
「輸出流欄位」自己命名(就是用來儲存處理後的結果的字段,可以和輸入流欄位保持一致),可以選擇正規表示式,
「搜尋」就是你希望被替換的字元,字串,可以是乙個正規表示式,
「使用…替換」就是你期望用什麼值替換被替換的部分,
「設定為空串」就是將你被選擇的部分用空替換
「使用字段值替換」你可以使用現有的某個欄位的值替換你期望被替換的部分,後面兩個根據自己的需要進行選擇。
案例:1:轉換/輸入/生成記錄-------自定義字段,型別,對應的值,生成記錄可以按照指定的生成記錄數生成值。
2:轉換/轉換/字串轉換-----各種定義
總:a:輸入流欄位----要被替換的字段的名稱
b: 輸出流欄位----替換後的新字段的名稱
c: 搜尋-----------表示要被替換的字元或字串
d: 使用…替換----被替換的字元或字串要被替換為
e: 輸出流字段為空-----此時替換將在原字段做改變
f: 搜尋為空------------每個字元前後都會視為空,為空的位置都會插入被替換字元或字串
g: 使用…替換為空-----搜尋字元將會置空
h: 熟悉kettle中的正規表示式
a:kettle中的正規表示式
1:正規表示式僅用字元或者字串表示-----包含該字元或者字串的字串都會被查詢出來
2:正規表示式中含有句點符號--------------句點符號可以匹配所有字元,包括空格和非字元符號
例如:t.n----匹配tan,ton,tmojn,tn
3:正規表示式中包含方括號----------------只有包含中括號中的字元才能被匹配,方括號只允許匹配單個字元
例如t[asdf]n----匹配tan,tsn,tdn
4: 使用圓括號加/的方式匹配單個或多個字元-----例如:t(a/s/d/f/oo)n----此時toon就會被匹配上
5:表示匹配次數的符號,這些符號用於確定僅靠該符號左邊的符號出現的次數
*表示0次或多次
+表示1次或多次
?表示0次或1次
表示恰好n次
表示n次到m次
6:正規表示式中的連字元「-」表示乙個範圍
7:」^「表示否的意思,表示不匹配該字元
7:將字段值設定為常量
字段:獲取欄位名稱
值替換:用常量值代替原值,此時無論原值有多少行,該行的所有值都會被乙個值所替換。
轉換掩碼:用於設定日期型別的格式。
設為空串:若設為空串則該列值全顯示為空。
8:拆分字段
需要拆分的字段:選擇需要拆分的字段
分隔符:拆分欄位間的結束符號
新的字段:看看能拆分的最大數,依據最大數量來定需要設定的新字段的數量,也可往大的設定,擷取不到將輸出null,也可以往
小的設定,這樣的話值部分擷取不到。
kettle元件 連線
新資料field1,field2 1,1 2,9 5,5 設定 標誌欄位是flag,關鍵字段是 field1,比較欄位是field2 合併後的資料 field1 field2 flag 1 1 identical 2 9 changed 3 3 deleted 4 4 deleted 5 5 new...
Kettle行列轉換
kettle在控制項中擁有行列轉換功能,但是行列轉換貌似是弄反了。一.行轉列 1.資料庫指令碼 create table studentinfo studentno int,subject varchar 10 grade int insert into studentinfo values 201...
kettle 轉換案例
把stu1的資料按id同步到stu2,stu2有相同id則更新資料 1 在mysql中建立兩張表 mysql create database kettle mysql use kettle mysql create table stu1 id int,name varchar 20 age int ...