mysql脚本查询 xxx分钟、xxx小时、xxx天之前的数据(使用 interval、subdate()等 对日期时间增减操作),写法和案例

一、例如查询 5 分钟前的数据

复制代码
select o.id, o.order_no, o.create_time
from t_order o
where o.deleted = 0
  -- 5分钟前
  and o.create_time < subdate(now(), interval 5 minute);

说明:

1、subdate(now(), interval 5 minute):当前系统时间 - 5分钟,返回5分钟之前的日期时间

二、几种对日期增减操作常用的写法

1、subdate()

复制代码
select subdate(now(), interval 5 minute ) from dual;

2、date_sub()

复制代码
select date_sub(now(), interval 5 minute) from dual;

3、now() - interval 5 minute

复制代码
select now() - interval 5 minute from dual;

4、与上述几种反向操作:adddate()、date_add()、now() + interval 5 minute

复制代码
select
    adddate(now(), interval 5 minute),
    date_add(now(), interval 5 minute),
    now() + interval 5 minute
from dual;

说明:

【1】以上几种写法都是等效的,作用相同

【2】也可以使用负数使之结果等效,例如:

复制代码
select
    subdate(now(), interval -5 minute),
    adddate(now(), interval 5 minute)
from dual;

结果相等,其他写法与其类似

相关推荐
小白男神17 小时前
MySQL进阶学习四(存储过程、游标、触发器)
mysql
这个DBA有点耶18 小时前
MVCC深入:Read View、版本链与快照读——InnoDB并发控制的内核
数据库·mysql·架构
kybs199119 小时前
全球灾害数据分析可视化 毕业设计-附源码66794
vue.js·spring boot·mysql·安全·django·c#·asp.net
程序猿_极客20 小时前
【免费】分享一套优质的基于SSM的校园失物招领系统的设计与实现,源码+文档+视频详解(讲解)
java·mysql·ssm·课程设计·失物招领系统
于平安21 小时前
MySQL-触发器
数据库·mysql
大猫和小黄21 小时前
MySQL锁与MVCC深度解析
mysql·mvcc·
数据库小学妹1 天前
MySQL库存扣减实战:原子UPDATE、分桶方案与锁范围分析
数据库·后端·mysql
Linux-lucky1 天前
39-41-Linux学习之旅之redis缓存基础与NFS基础
linux·运维·mysql·ubuntu
于平安1 天前
MySQL-变量,流程控制与游标
数据库·mysql