如何通过SQL查询将日期格式化为YYYY, MM, DD?已用date(column_name)获2018-03-13
解决SQL日期格式化为
YYYY, MM, DD的方法 没问题!要把2018-03-13这种日期格式转成2018, 03, 13,不同的SQL数据库有各自的日期格式化函数,我给你整理几个主流数据库的实现方案:
MySQL/MariaDB
使用DATE_FORMAT()函数,指定格式字符串'%Y, %m, %d'就能直接得到目标格式:SELECT DATE_FORMAT(your_date_column, '%Y, %m, %d') AS formatted_date FROM your_table;其中
%Y对应4位年份,%m是带前导零的两位月份,%d是带前导零的两位日期,完美匹配你需要的格式。PostgreSQL
用TO_CHAR()函数来格式化日期,格式模板用'YYYY, MM, DD'即可:SELECT TO_CHAR(your_date_column, 'YYYY, MM, DD') AS formatted_date FROM your_table;YYYY、MM、DD分别对应4位年、两位月、两位日,输出结果就是2018, 03, 13。SQL Server
如果是SQL Server 2012及以上版本,推荐用FORMAT()函数,语法更直观:SELECT FORMAT(your_date_column, 'yyyy, MM, dd') AS formatted_date FROM your_table;要是你的SQL Server版本比较旧,也可以用
CONCAT()结合日期拆分函数来实现:SELECT CONCAT( YEAR(your_date_column), ', ', RIGHT('0' + CAST(MONTH(your_date_column) AS VARCHAR), 2), ', ', RIGHT('0' + CAST(DAY(your_date_column) AS VARCHAR), 2) ) AS formatted_date FROM your_table;Oracle
同样使用TO_CHAR()函数,格式字符串和PostgreSQL一致:SELECT TO_CHAR(your_date_column, 'YYYY, MM, DD') AS formatted_date FROM your_table;
根据你实际使用的数据库选择对应的语句就可以啦!
内容的提问来源于stack exchange,提问作者Atul Stha
相关产品推荐
相关产品推荐

