impala 在给定分隔符后提取文本的字符串函数
impala string function to extract text after a given separator
假设我有一个可变长度的字符串,例如:
'633000000HIQWA4:005160000UT334'
'00YYSKSG004:00YJDJJDA3443'
'300SGDK112WA4:00KFJJD900'
在 :
之后使用哪个 impala 字符串函数提取文本
例如:
'005160000UT334'
'00YJDJJDA3443'
'00KFJJD900'
使用split_part(string source, string delimiter, bigint n)
函数。 n
的值将是字段从 1 开始编号。
select split_part('633000000HIQWA4:005160000UT334',':',2);
+----------------------------------------------------+
| split_part('633000000HIQWA4:005160000UT334',':',2) |
+----------------------------------------------------+
| 005160000UT334 |
+----------------------------------------------------+
试一试它有效
select
CONCAT( split_part(cast((1347/100+11)%12+1 as varchar(2)),'.',1), ':',substring(cast((1347%100+100) as char(3)),2,2),
' ',CASE (1347 / 1200) WHEN 0 THEN 'am' ELSE 'pm' END)**
输出:下午 1:47
假设我有一个可变长度的字符串,例如:
'633000000HIQWA4:005160000UT334'
'00YYSKSG004:00YJDJJDA3443'
'300SGDK112WA4:00KFJJD900'
在 :
之后使用哪个 impala 字符串函数提取文本
例如:
'005160000UT334'
'00YJDJJDA3443'
'00KFJJD900'
使用split_part(string source, string delimiter, bigint n)
函数。 n
的值将是字段从 1 开始编号。
select split_part('633000000HIQWA4:005160000UT334',':',2);
+----------------------------------------------------+
| split_part('633000000HIQWA4:005160000UT334',':',2) |
+----------------------------------------------------+
| 005160000UT334 |
+----------------------------------------------------+
试一试它有效
select
CONCAT( split_part(cast((1347/100+11)%12+1 as varchar(2)),'.',1), ':',substring(cast((1347%100+100) as char(3)),2,2),
' ',CASE (1347 / 1200) WHEN 0 THEN 'am' ELSE 'pm' END)**
输出:下午 1:47