假设我有一个可变长度的字符串,例如:
'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