hive如何將split切割後的結果轉成列輸出

2021-10-22 22:13:40 字數 606 閱讀 7908

首先建立乙個測試表 test 將需求表明。

id name

1 yy,tl,dd

2 xy,dl,dz

想要得到的結果是

1 yy

1 tl

1 dd

2 xy

2 dl

2 dz

思路:

需要將name通過','進行切割(split),得到陣列結果集,就需要考慮如何將這個陣列和id如何輸出,此時就要借助explode,

而hive不支援explode的直接使用,還需要lateral view去實現。

下面給出對應的sql語句:

select

a.id,

b.rename

from test a

lateral view explode(split(a.name,','

)) b as rename

;得到的結果即為:

idrename

1 yy

1 tl

1 dd

2 xy

2 dl

2 dz

hive 如何將陣列轉成字串 HIve字串函式

1.字元 ascii 碼函式 ascii 語法 ascii string str 返回值 int 說明 返回字串 str 中第乙個字元的ascii 碼 舉例 hive select ascii ba from test ok2.base64 字串 語法 base64 binary bin 返回值 s...

如何將特殊字串翻轉後再拼接

給定乙個字串,將其中的每乙個單詞進行翻轉並輸出翻轉後的字串 單詞的定義為 連續的由字母組成的子串 例如 abc 1de fg 的單詞有3個,為 abc de fg 示例 輸入 abc 1de fg 輸出 cba 1ed gf join x 1 for x in re.split r a z abc ...

如何將表單居中顯示 如何將重複資料突出顯示?

將 中一列資料中重複的,使用特殊顏色突出顯示或者使用一些符號標記出來。例如 乙個 商,可以邀請別的 商加入成為聯合體,報表要顯示所有 商,然後 商最後一列顯示所有聯合體,當聯合體 商跟別的 商重複時要突出顯示,並且加星號。用設計器自帶 demo 資料來源中的訂單明細資料表,使用嚮導建立一張分組報表,...