将日期转换为Jan/Feb格式月份缩写的代码调试求助
日期转换问题排查与解决
核心问题解析
你当前代码的问题出在日期解析格式不匹配:
- 源日期数据格式是
MM/DD/YYYY(支持单数字月/日,比如1/20/2024) - 但你用了
PARSE_DATE('%m-%d-%Y', Date),其中%m-%d-%Y要求日期用连字符分隔、两位数字月/日(比如01-20-2024),和源数据格式完全不符,导致解析失败,最终FORMAT_DATE无法生成有效输出。
另外,你用%B会返回完整月份名(January、February),如果要Jan、Feb这类缩写,应该用%b格式符。
修正后的SQL代码
FORMAT_DATE('%b', DATE(PARSE_DATE('%m/%d/%Y', Date))) AS month_of_date
测试结果验证
用你提供的测试数据运行后,month_of_date列会生成如下结果:
- 1/20/2024 → Jan
- 1/21/2024 → Jan
- 1/26/2024 → Jan
- 2/1/2024 → Feb
- 2/2/2024 → Feb
- 2/2/2024 → Feb
内容的提问来源于stack exchange,提问作者Rahul kadamb
相关产品推荐
相关产品推荐

