MySQL时间函数使用,查询前一天、当月、当年、上年
DATE_SUB()和DATE_ADD()函数,实现日期增减DATE_SUB(NOW(),INTERVAL 30 MINUTE) 当前时间减30分钟DATE_SUB(NOW(),INTERVAL 1 day) 当前时间减1天DATE_SUB(NOW(),INTERVAL 1 hour) 当前时间减1小时 DATE_SUB(NOW(),INTERVAL 1 second) 当前时间减1秒DATE_SUB(NOW(),INTERVAL 1 week) 当前时间减1星期DATE_SUB(NOW(),INTERVAL 1 month) 当前时间减1个月 DATE_SUB(NOW(),INTERVAL 1 quarter) 当前时间减1季度DATE_SUB(NOW(),INTERVAL 1 year) 当前时间减1年
-- 1、查询当天的数据
AND TO_DAYS(t1.create_time)=TO_DAYS(NOW());
AND DATEDIFF( NOW(), t1.create_time ) = 0;
-- 2、查询昨天的数据
AND TO_DAYS(NOW())-TO_DAYS(t1.create_time)=1;
AND DATEDIFF( NOW(), t1.create_time ) = 1;
-- 3、查询当周的数据
AND YEARWEEK(DATE_FORMAT(t1.create_time,'%Y-%m-%d'))=YEARWEEK(NOW());
-- 4、查询上周的数据
AND YEARWEEK(DATE_FORMAT(t1.create_time,'%Y-%m-%d'))=YEARWEEK(NOW())-1;
-- 5、查询最近7天的数据
AND DATE_SUB(CURDATE(),INTERVAL 7 DAY)<=DATE(t1.create_time);
AND DATEDIFF( NOW(), t1.create_time ) <= 7;
-- 6、查询当月的数据
AND DATE_FORMAT(t1.create_time,'%Y%m')=DATE_FORMAT(CURDATE(),'%Y%m');
-- 7、查询上月的数据
AND PERIOD_DIFF(DATE_FORMAT(NOW(),'%Y%m'),DATE_FORMAT(t1.create_time,'%Y%m'))=1;
-- 8、查询本季度的数据
AND QUARTER(t1.create_time)=QUARTER(now());
-- 9、查询上季度的数据
AND QUARTER(t1.create_time)=QUARTER(DATE_SUB(now(),interval 1 QUARTER));
-- 10、查询当年的数据
AND YEAR(t1.create_time) =YEAR(NOW());
-- 11、查询上年的数据
AND year(t1.create_time)=year(date_sub(now(),interval 1 year));
AND YEAR(t1.create_time) = (YEAR(NOW()) - 1);
-- 12、上年同天
AND to_days(t1.create_time) = to_days(date_sub(now(),interval 1 year));
-- 12、上年同周
AND YEARWEEK(date_format(t1.create_time,'%Y-%m-%d'),1) = YEARWEEK(date_sub(now(),interval 1 year),1);
-- 12、上年同月
AND date_format(t1.create_time,'%Y%m') = date_format((now() - INTERVAL 1 YEAR ),'%Y%m');
对日期范围搜索的大致有三种方式:
1、between and
t1.create_time BETWEEN '2022-08-01' AND '2022-09-01'
2、DATEDIFF(date1,date2)
SELECT DATEDIFF('2022-08-01','2022-09-01');-31
SELECT DATEDIFF('2022-10-01','2022-09-01');-30
3、TIMESTAMPDIFF(interval,datetime1,datetime2)
FRAC_SECOND毫秒
SECOND秒
MINUTE分钟
HOUR小时
DAY天
WEEK星期
MONTH月
QUARTER季度
YEAR年
SELECT TIMESTAMPDIFF(day,'2022-08-01','2022-09-01');31
SELECT TIMESTAMPDIFF(day,'2022-10-01','2022-09-01');-30
计算结果与DATEDIFF方式的正负相反
MySQL时间函数使用,查询前一天、当月、当年、上年相关推荐
- mysql 本周函数_【转】MySQL时间函数的使用:查询本周、下周、本月、下个月份的数据...
MySQL时间函数的使用:查询本周.上周.本月.上个月份的数据[转] /*今天*/ select * from 表名 where to_days(时间字段) = to_days(now()); /*昨 ...
- mysql 日期查询下周,MySQL时间函数的使用:查询本周、下周、本月、下个月份的数据【转】...
MySQL时间函数的使用:查询本周.上周.本月.上个月份的数据[转] /*今天*/ select * from 表名 where to_days(时间字段) = to_days(now()); /*昨 ...
- Mysql时间函数用法
Mysql时间函数用法 NOW,CURDATE,CURTIME NOW() 函数返回当前的日期和时间. 例子: SELECT NOW(),CURDATE(),CURTIME() NOW() CURDA ...
- Mysql时间函数的坑
Mysql时间函数 函数1: NOW() 函数2: SYSDATE() 大家看下测试 示例 正常大家执行时间函数[看起来没啥问题吧] 执行第二段代码[这里代码认为 sleep休息5]大家会发现前后时间 ...
- mysql LOCATE() 函数 模糊查询,类似like %%
mysql LOCATE() 函数 模糊查询,类似like '%%' 查询的字符串 前面添加 BINARY ,区分大小写 SELECT * FROM `ce1` WHERE locate(BINARY ...
- mysql时间函数now()_MySQL中时间函数NOW()和SYSDATE()的区别
mysql中日期函数还是比较常用的.主要有NOW()和SYSDATE()两种,虽然都表示当前时间,但使用上有一点点区别. NOW()取的是语句开始执行的时间,SYSDATE()取的是动态的实时时间. ...
- mysql时间函数总结_MySQL 日期时间函数常用总结
获得当前日期+时间(date + time)1.1 函数:now() 相关函数:current_timestamp(),localtime(),localtimestamp() 举例说明: 2. ...
- postgresql兼容MySQL 时间函数date_format
MySQL DATE_FORMAT() 函数 定义和用法 DATE_FORMAT() 函数用于以不同的格式显示日期/时间数据. 语法 DATE_FORMAT(date,format) date 参数是 ...
- mysql 时间函数的使用
<!--注册曲线每天map--><resultMap id="DayRegistrationCurveMap" type="com.hhtimes.co ...
- MySQL 时间函数加减计算
一.获取当前时间 1.获取当前日期 2.获取当前时间 3.获取日期+时间 4.获取UTC时间 utc_date() 获取UTC日期 utc_time() 获取UTC时间 utc_timestamp() ...
最新文章
- 00后的简历有多野?!!
- HTML5前端知识分享:Vue入门
- lbp matlab程序,求教大神给解释一下LBP特征提取每部分程序是干什么的
- 银联的bankall_阿尔法银行罗马尼亚分行开始受理银联卡
- java rx_史上最浅显易懂的RxJava入门教程
- js排序算法详解-桶排序
- Vscode终端汉字乱码的简单解决方法
- 4场直播丨EsgynDB连接服务层、Oracle、openGauss
- lay-ui里修改表格自动换行
- 修改360抢票的刷新频率+突破8车次限制
- AUC的相关知识及K-S曲线和K-S值介绍
- java持久化框架_众里寻他千百度-- 轻量级持久化框架-java-火龙果软件工程
- 人工智能学习总结(1)——人工智能的三个分支:认知、机器学习、深度学习
- 如何制作一套简单价廉的太阳能发电系统
- excel使用教程_5个免费Excel自学网站!每天5分钟!小学生也能成为数据分析师
- mysql备份之ZMR
- 钉钉小程序上传附件(PDF等非媒体文件)至第三方文件服务器(企业内部应用)
- django从零开始引入bootstrap模板
- Java 线程间通讯信号的错失
- JAVA 十六进制转十进制正负数