如何在Looker Studio中将Firebase文本日期转换为日期格式
解决Looker Studio中文本日期转指定年份日期格式的方案
步骤1:优化日期文本提取(替代原CASE语句)
依赖字符串长度判断容易出错,改用正则表达式更灵活地提取干净的月日部分:
REGEXP_REPLACE(REGEXP_EXTRACT(Sample_Date, r'(\d+/\d+)|(/\d+/\d+)'), r'^/', '')
这个表达式会:
- 从原文本中匹配
数字/数字或/数字/数字的日期片段 - 自动去掉开头多余的斜杠,得到
1/2、12/7这类标准月日格式
步骤2:拼接年份并转换为日期格式
根据需求指定年份(比如12月对应2022年,其余月份对应2023年),构造完整日期字符串后解析:
PARSE_DATE( "%Y/%m/%d", CASE WHEN REGEXP_EXTRACT(REGEXP_REPLACE(REGEXP_EXTRACT(Sample_Date, r'(\d+/\d+)|(/\d+/\d+)'), r'^/', ''), r'^(\d+)') = '12' THEN "2022/" || REGEXP_REPLACE(REGEXP_EXTRACT(Sample_Date, r'(\d+/\d+)|(/\d+/\d+)'), r'^/', '') ELSE "2023/" || REGEXP_REPLACE(REGEXP_EXTRACT(Sample_Date, r'(\d+/\d+)|(/\d+/\d+)'), r'^/', '') END )
如果所有日期统一用2023年,可简化为:
PARSE_DATE("%Y/%m/%d", "2023/" || REGEXP_REPLACE(REGEXP_EXTRACT(Sample_Date, r'(\d+/\d+)|(/\d+/\d+)'), r'^/', ''))
步骤3:设置字段显示样式
转换为日期类型后,在Looker Studio的字段设置中,将默认格式修改为YYYY/MM/DD,即可得到目标展示样式。
基于现有字段的快速修改方案
如果不想替换已创建的RejectUnnecessaryText字段,直接在其基础上拼接年份解析:
PARSE_DATE( "%Y/%m/%d", CASE WHEN REGEXP_EXTRACT(RejectUnnecessaryText, r'^(\d+)') = '12' THEN "2022/" || RejectUnnecessaryText ELSE "2023/" || RejectUnnecessaryText END )
内容的提问来源于stack exchange,提问作者Damon
相关产品推荐
相关产品推荐

