QuickSight技术问题:如何截取Timestamp字符串中T之前的日期部分
在QuickSight中提取日期字符串的日期部分
针对格式为yyyy-MM-ddTHH:mm:ss:SSSZ的字符串,推荐两种直接有效的方法提取T之前的日期部分:
方法1:用SPLIT函数拆分字符串
利用QuickSight的SPLIT函数按T分割字符串,直接取第一部分即可:
SPLIT({payload_enrol_date}, 'T', 1)
该函数会把目标字符串按T拆分为两部分,参数1指定取拆分后的第一个元素,也就是yyyy-MM-dd格式的日期内容。
方法2:用LEFT+POSITION函数截取字符串
先通过POSITION函数定位T的位置,再用LEFT函数截取该位置之前的内容:
LEFT({payload_enrol_date}, POSITION('T' IN {payload_enrol_date}) - 1)
POSITION('T' IN {payload_enrol_date}):返回T在字符串中的位置(例如2024-05-20T12:34:56.789Z里,T的位置是11)- 减1是为了排除
T本身,最终得到纯日期字符串
如果需要将提取后的字符串转为日期类型,在外层包裹parseDate函数即可:
parseDate(SPLIT({payload_enrol_date}, 'T', 1), 'yyyy-MM-dd')
内容的提问来源于stack exchange,提问作者user20774524
相关产品推荐
相关产品推荐

