mysql中对时间的操作

SQL 语句中对时间的操作主要包括以下几种:

  1. 提取时间元素

    • YEAR(date_column): 提取年份
    • MONTH(date_column): 提取月份
    • DAY(date_column): 提取日
    • HOUR(time_column): 提取小时
    • MINUTE(time_column): 提取分钟
    • SECOND(time_column): 提取秒
  2. 时间计算

    • DATE_ADD(date, INTERVAL expr unit): 对日期进行加减运算
    • DATEDIFF(date1, date2): 计算两个日期之间的天数差
    • TIMEDIFF(time1, time2): 计算两个时间之间的差值
    • TIMESTAMPDIFF(unit, datetime1, datetime2): 计算两个时间戳之间的差值
  3. 时间格式转换

    • DATE_FORMAT(date, format): 将日期格式化为字符串
    • TIME_FORMAT(time, format): 将时间格式化为字符串
    • STR_TO_DATE(str, format): 将字符串转换为日期
  4. 时间比较

    • date1 < date2: 比较两个日期大小
    • time1 < time2: 比较两个时间大小
    • datetime1 < datetime2: 比较两个时间戳大小
  5. 时间范围查询

    • WHERE date_column BETWEEN '2023-01-01' AND '2023-12-31': 查询指定日期范围内的记录
    • WHERE time_column >= '09:00:00' AND time_column < '18:00:00': 查询指定时间范围内的记录
  6. 当前时间获取

    • CURDATE(): 获取当前日期
    • CURTIME(): 获取当前时间
    • NOW(): 获取当前日期和时间
相关推荐
摇滚侠2 分钟前
Maven 入门+高深 SSM 案例 111-112
java·数据库·maven
ZengLiangYi16 分钟前
从 RAG 到知识图谱:个人知识管理的演进
数据库·后端·程序员
zuYM4g7Dp22 分钟前
文顶顶iOS开发数据库篇—SQL
数据库·sql·ios
WyCAGy8ij22 分钟前
Redis 分布式锁进阶第四篇讲解
数据库·redis·分布式
锋行天下29 分钟前
中小项目高可用,真的需要K8s吗?从单机备份到企业级架构的完整思考
后端·mysql·nginx
tedcloud12336 分钟前
FluentFlyout部署教程:打造更美观的Windows桌面环境
数据库·人工智能·sql·学习·自动化
無限進步D1 小时前
MySQL 约束
数据库·mysql
C137的本贾尼1 小时前
磁盘结构与关键日志:Redo Log、Undo Log 与双写缓冲区
服务器·数据库·oracle
C137的本贾尼1 小时前
幻读与 Next-Key Lock:可重复读隔离级别如何解决幻读
大数据·数据库
C137的本贾尼1 小时前
死锁的产生、检测与避免
数据库