如何在Snowflake中将字符串转为MM/DD/YYYY格式的日期或时间戳?
日期格式转换解决方案
你执行的to_timestamp('03/30/2018','MM/DD/YYYY')会将字符串转换为时间戳类型,数据库默认会以YYYY-MM-DD HH:MI:SS.US的格式展示该类型数据,所以得到了2018-03-30 00:00:00.000000的输出。
要得到MM/DD/YYYY格式的结果,需要用格式化函数将时间戳转换为指定格式的字符串,以PostgreSQL为例:
select to_char(to_timestamp('03/30/2018','MM/DD/YYYY'), 'MM/DD/YYYY');
说明
- 先用
to_timestamp将输入字符串解析为时间戳类型,确保日期的合法性; - 再用
to_char函数将时间戳格式化为你需要的MM/DD/YYYY字符串格式,执行后就能得到预期的03/30/2018输出。
如果是其他数据库(如MySQL),可以使用对应的格式化函数:
-- MySQL 写法 SELECT DATE_FORMAT(STR_TO_DATE('03/30/2018', '%m/%d/%Y'), '%m/%d/%Y');
内容的提问来源于stack exchange,提问作者Deepika reddy
相关产品推荐
相关产品推荐

