TypechoJoeTheme

至尊技术网

登录
用户名
密码

DATE_FORMAT()怎样将时间戳转为‘年-月-日’格式?常用占位符速查表,时间戳转换成年月日

2025-12-07
/
0 评论
/
3 阅读
/
正在检测是否收录...
12/07

标题:MySQL中DATEFORMAT()函数详解:时间戳转‘年-月-日’格式及常用占位符速查
关键词:DATE
FORMAT, MySQL时间格式化, 时间戳转换, 日期格式, SQL函数
描述:本文详细讲解MySQL中DATE_FORMAT()函数将时间戳转为‘年-月-日’格式的方法,提供常用占位符速查表,并附实战代码示例,帮助开发者快速掌握日期格式化技巧。

正文:

在日常数据库操作中,时间戳与日期格式的转换是高频需求。MySQL提供的DATE_FORMAT()函数如同一位专业的翻译官,能精准地将计算机理解的数字时间戳转化为人类可读的日期字符串。今天我们就深入探讨这个函数的妙用,特别是如何实现“年-月-日”这种符合中文习惯的日期格式输出。

一、核心用法:时间戳转标准日期格式

当我们需要将时间戳(如1625011200)或DATETIME字段转换为“2023-06-30”格式时,基本语法如下:

SELECT DATE_FORMAT(FROM_UNIXTIME(时间戳), '%Y-%m-%d') AS formatted_date;
-- 示例(将1625011200转为日期)
SELECT DATE_FORMAT(FROM_UNIXTIME(1625011200), '%Y-%m-%d'); 
-- 输出:2021-06-30

如果是DATETIME类型的字段,则更简单:

SELECT DATE_FORMAT(create_time, '%Y-%m-%d') FROM orders;

二、占位符速查手册(常用20种)

掌握占位符就像获得日期格式化的密码本,以下是实战中最常用的组合:

| 占位符 | 说明 | 示例输出 |
|--------|----------------------|---------------|
| %Y | 四位年份 | 2023 |
| %y | 两位年份 | 23 |
| %m | 数字月份(带前导零) | 06 |
| %c | 数字月份(无前导零) | 6 |
| %d | 日期(带前导零) | 05 |
| %e | 日期(无前导零) | 5 |
| %H | 24小时制小时 | 14 |
| %h | 12小时制小时 | 02 |
| %i | 分钟 | 08 |
| %s | 秒 | 45 |
| %W | 星期全名 | Monday |
| %a | 星期缩写 | Mon |
| %M | 月份全名 | January |
| %b | 月份缩写 | Jan |

组合示例
- '%Y年%m月%d日' → 2023年06月15日
- '%H:%i:%s' → 14:30:45

三、实战中的注意事项

  1. 时区陷阱:使用FROM_UNIXTIME()时,MySQL会按系统时区转换。如需指定时区,可先换算:
SELECT DATE_FORMAT(  
     FROM_UNIXTIME(1625011200 + 8*3600), -- 东八区补偿  
     '%Y-%m-%d %H:%i'  
   );
  1. 性能优化:对大表查询时,避免在WHERE条件中使用DATE_FORMAT(),这会导致索引失效。应改用范围查询:
-- 错误做法(索引失效)  
   SELECT * FROM logs WHERE DATE_FORMAT(create_time,'%Y-%m')='2023-06';  
   
   -- 正确做法  
   SELECT * FROM logs WHERE create_time BETWEEN '2023-06-01' AND '2023-06-30';
  1. 多语言适配:某些占位符(如%M)输出英文月份,如需本地化,可结合CASE语句或应用层处理。

四、进阶组合技巧

  1. 生成季度报表
SELECT  
     CONCAT(YEAR(create_time), 'Q', QUARTER(create_time)) AS quarter  
   FROM sales;
  1. 动态时间段查询
-- 查询最近30天数据  
   SELECT * FROM user_activity  
   WHERE DATE_FORMAT(login_time, '%Y-%m-%d') >=   
     DATE_FORMAT(DATE_SUB(NOW(), INTERVAL 30 DAY), '%Y-%m-%d');
朗读
赞(0)
版权属于:

至尊技术网

本文链接:

https://www.zzwws.cn/archives/40623/(转载时请注明本文出处及文章链接)

评论 (0)