對多個字段分組 拆分字段步驟詳解

2021-10-16 04:51:37 字數 1363 閱讀 9143

拆分字段步驟用於根據指定的分隔符將源字段(字串型別)拆分為多個欄位的場景。步驟配置資訊如下圖

圖1 拆分字段步驟配置資訊

下文詳細解

釋各控制項的含義:

1、轉換步驟名稱:步驟的名稱,在單一的轉換中,名稱必須唯一。

2、需要拆分的字段:下拉框選擇輸入步驟中包含的字段,作為拆分的目標。

3、分隔符:根據需要指定切割欄位的分隔符。特殊字元可以設定為$[序號]格式。序號可以查詢ascii表,採用十六進製制表示其序號。例如$[7c]代表'|'字元。

4、外殼(enclosure):設定包裹欄位的字元。一定要確保每乙個切分包含偶數個enclosure,否則結果很難**。kettle將盡量確保每乙個切割包含偶數個enclosure,如果當前切分不包含偶數個那麼可以繼續往後連線切分直到包含偶數個enclosure為止。例如:要拆分的字串為「$11$|22|3$|$4|5$$6|$7$8$9|$10」,其中分隔符為「|」。如果設定enclosure為$,那麼結果將拆分為$11$、22、3$|$4、5$$6、$7$8$9|$10;如果未設定enclosure,那麼結果將拆分為$11$、22、3$、$4、5$$6、$7$8$9、$10。

5、字段:

(1)新的字段:根據需要設定拆分欄位名,可新增多行。拆分後的資料會按順序分配到每個欄位中。

(2)id:在新的字段的值中匹配前面的值,常用於id編號的字首。當有多個拆分欄位時,則必須對每個欄位都設定匹配id

(3)移除id?:如果選擇「y」,被匹配的id會被刪除,保留其餘資料;選擇「n」,就會保留id設定規則。

(4)型別:設定新字段的型別,如果型別不匹配就會終止轉換。

(5)長度:指定新字段的長度。

(6)精度:為數字型別的新字段指定小數點後精確位數。

(7)格式:根據需要設定數字或者日期的格式,如20200331對應格式為「yyyy-mm-dd」。

(8)分組符號:千位分隔符。

(9)小數點符號:用於表示小數點的符號,如「10000.00」中的「.」會對其進行識別並輸出小數「10000.00」。但如果資料為「10000,00」即便指定了型別為number後,指定小數點符號為逗號,會輸出「10000,00」的字串。

(10)貨幣符號:用於表示貨幣的符號,如人民幣(¥),歐元(€)。

(11)是否為空:設定空值判斷條件,在字段中指定要匹配的字串。當字段值與指定字串匹配時,字段值設定為null。

(12)預設:就是當字段值為空或者「null」時,為新字段指定的預設值。

(13)去除空格型別:下拉框根據需要選擇去除空格的方式。

內部供稿 ccsaii037

MYSQL 分組 group by 多個字段

sql語法的規定,用了group by,則select之後的字段除聚合函式外都必須出現在group by中,你可以少於group by中的字段,但不能包含group by中沒有的字段 select subject,semester,count from subject selection group...

mysql對多個字段排序

在對資料庫進行查詢的時候有時候需要將查詢的結果按照某欄位公升序或者降序排列,甚至有時候需要按照某兩個字段進行公升降序排列。如果按照某一字段進行排列,只需要在查詢語句最後寫上 order by 列名 asc 公升序 或者 order by 列名 desc 降序 即可,那麼如果按照欄位a公升序,欄位b降...

group by 多個字段

網上查了很多好像說的都對,但是囉嗦,我看著都費勁 在現實的應用場景中 如果想要統計每個班的男生 女生的數量就可以group by 班級id,性別 如下 select class.name case when students.1 then 男 else 女 end as 1,count studen...