INTERVAL记录

INTERVAL作为sql中关键字

interval在sql中一般表示为时间间隔的意思
常用在date_add()、**date_sub()**函数中,常用于时间的加减法
在这里插入图片描述
上述sql表示为当前时间一年后的时间。
interval后可选择的时间粒度:
MICROSECOND,
SECOND,
MINUTE,
HOUR,
DAY,
WEEK,
MONTH,
QUARTER,
YEAR,
SECOND_MICROSECOND,
MINUTE_MICROSECOND,
MINUTE_SECOND,
HOUR_MICROSECOND,
HOUR_SECOND,
HOUR_MINUTE,
DAY_MICROSECOND,
DAY_SECOND,
DAY_MINUTE,
DAY_HOUR,
YEAR_MONTH,

当时间粒度为多个时,以下划线连接单位。如:YEAR_MONTH
sql演示:
在这里插入图片描述
上述sql表示的时当前时间增加一年零一个月。

那么,有个问题,我们在使用interval的时候可不可以使用变量呢?
可以,但是不可以直接写在单位里面,如:
在这里插入图片描述
这里会报错:
在这里插入图片描述
这里应该把变量放在外面:
在这里插入图片描述

下面记录一些特殊时间:
在这里插入图片描述

SELECT DATE_FORMAT(now(),'%Y-%m-%d 00:00:00') as '今天开始'
SELECT DATE_FORMAT(now(),'%Y-%m-%d 23:59:59') as '今天结束'
SELECT DATE_FORMAT(DATE_SUB(now(),INTERVAL 1 DAY),'%Y-%m-%d 00:00:00') as '昨天开始'
SELECT DATE_FORMAT(DATE_SUB(now(),INTERVAL 1 DAY),'%Y-%m-%d 23:59:59') as '昨天结束'	
SELECT DATE_FORMAT(DATE_SUB(CURDATE(),INTERVAL WEEKDAY(CURDATE())DAY),'%Y-%m-%d 00:00:00') as '本周开始'
SELECT DATE_FORMAT(DATE_ADD(SUBDATE(CURDATE(),WEEKDAY(CURDATE())),INTERVAL 6 DAY),'%Y-%m-%d 23:59:59') as '本周结束'
SELECT DATE_FORMAT(DATE_SUB(DATE_SUB(CURDATE(),INTERVAL WEEKDAY(CURDATE())DAY),INTERVAL 1 WEEK),'%Y-%m-%d 00:00:00') as '上周一'
SELECT DATE_FORMAT(DATE_SUB(DATE_SUB(CURDATE(),INTERVAL WEEKDAY(CURDATE())DAY),INTERVAL 1 DAY),'%Y-%m-%d 23:59:59') as '上周末'
SELECT DATE_FORMAT(CURDATE(),'%Y-%m-01 00:00:00') as '本月开始'
SELECT DATE_FORMAT(LAST_DAY(CURDATE()),'%Y-%m-%d 23:59:59') as '本月结束'
SELECT DATE_FORMAT(DATE_SUB(CURDATE(),INTERVAL 1 MONTH),'%Y-%m-01 00:00:00') as '上月初'
SELECT DATE_FORMAT(LAST_DAY(DATE_SUB(CURDATE(),INTERVAL 1 MONTH)),'%Y-%m-%d 23:59:59') as '上月末'
SELECT CONCAT(YEAR(now()),'-01-01 00:00:00') as '年初'
SELECT CONCAT(YEAR(now()),'-12-31 23:59:59') as '年末'
SELECT DATE_FORMAT(DATE_SUB(CURDATE(),INTERVAL DAYOFYEAR(now())-1 DAY),'%Y-%m-%d 00:00:00') as '年初'
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值