Tableau中如何将任意日期转换为当月首日且保留2位月份为日期格式
Tableau 任意日期转当月首日实现方案
问题说明
需要将任意日期转换为对应月份的首日,要求月份保留2位数字,最终输出为日期类型。原尝试的拼接公式未对单数字月份补前导零,不符合格式要求。
解决方案
方案1:原生函数实现(推荐,无格式兼容问题)
直接使用Tableau内置的DATE_TRUNC函数截断到月份维度,自动返回标准日期类型,无需手动处理格式:DATE(DATE_TRUNC('month', [Date]))
方案2:字符串拼接实现(对应原思路改造)
对单数字月份补前导零后再拼接,最后转日期类型:
DATE( "01" + "-" + RIGHT("0" + STR(MONTH([Date])), 2) + "-" + STR(YEAR([Date])) )
效果验证
两种方案均可匹配测试数据预期:
- 输入9/01/2020 → 输出1/01/2020
- 输入10/01/2020 → 输出1/01/2020
- 输入5/03/2021 → 输出1/03/2021
- 输入12/03/2021 → 输出1/03/2021
内容的提问来源于stack exchange,提问作者Aahi
相关产品推荐
相关产品推荐

