MySQL用DATE_FORMAT函数,如DATE_FORMAT(NOW(), '%Y-%m-%d');2. Oracle用TO_CHAR函数,如TO_CHAR(SYSDATE, 'YYYY-MM-DD HH24:MI:SS');3. SQL Server可用CONVERT或FORMAT函数,如FORMAT(GETDATE(), 'yyyy-MM-dd HH:mm:ss')。

SQL 中格式化日期主要依赖数据库自带的日期函数,不同数据库语法略有差异。核心方法是使用内置函数将日期转换为指定格式的字符串。
使用 DATE_FORMAT 函数(MySQL)
MySQL 中常用 DATE_FORMAT() 函数来格式化日期。
- %Y:4 位数年份(如 2024)
- %m:两位数月份(01-12)
- %d:两位数日期(01-31)
- %H:24 小时制小时
- %i:分钟
- %s:秒
示例:
SELECT DATE_FORMAT(NOW(), '%Y-%m-%d') AS formatted_date;-- 输出:2024-05-16
使用 TO_CHAR 函数(Oracle)
Oracle 使用 TO_CHAR() 将日期转为字符串。
- YYYY:四位年份
- MM:两位月份
- DD:两位日期
- HH24:24 小时制
- MI:分钟
- SS:秒
示例:
SELECT TO_CHAR(SYSDATE, 'YYYY-MM-DD HH24:MI:SS') AS formatted_date FROM dual;-- 输出:2024-05-16 14:30:25
使用 CONVERT 或 FORMAT 函数(SQL Server)
SQL Server 可用 CONVERT() 或较新的 FORMAT()。
CONVERT 示例:
SELECT CONVERT(VARCHAR, GETDATE(), 120) AS formatted_date;-- 输出:2024-05-16 14:30:25
FORMAT 示例(更灵活):
SELECT FORMAT(GETDATE(), 'yyyy-MM-dd HH:mm:ss') AS formatted_date;-- 输出自定义格式
基本上就这些。根据你使用的数据库选择对应函数即可。注意不同数据库支持的格式符和函数名称不同,别混用。










