团队,
需要帮助。
我有一个列,其值类似于“ 2019年2月27日的总计百分比”,我只需要从中提取日期部分,而列中的值与上面相同,因此我在下面使用。
当split(col1,'')[0] ='Sum'时,substr(col1,-10)否则以null结尾为col2
但是,问题是我确实有以诸如“总计而不是必需的总和”之类的值开头的列值,因此在上面的代码中,我得到的结果是“不需要的”,我不需要,应将其替换为空值。
我的新列应仅获取日期值,其余应为null。如何做到这一点。请帮助。谢谢
答案 0 :(得分:0)
答案 1 :(得分:0)
演示:
Select regexp_extract(str,'\\d{2}/\\d{2}/\\d{4}',0) as dt
from
(-- your data
select 'Sum total to percent on 02/27/2019' as str
)s
结果:
02/27/2019
在此处查看测试:http://demo.gethue.com/hue/editor?editor=282635&type=hive
正则表达式'\ d {2} / \ d {2} / \ d {4}'的意思是:两位数,斜杠两位数,斜杠,4位