sql date时间加减几天几小时

Posted 君子笑而不语

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了sql date时间加减几天几小时相关的知识,希望对你有一定的参考价值。

//时间转成年月日时分秒
select date_format(now(),‘%Y%m%d%H%i%S‘)
//时间转成年月日
select date_format(now(),‘%Y%m%d‘)
//去年此时
select DATE_ADD(now(), Interval -1 year)
//上月此时
select DATE_ADD(now(), Interval -1 month)
//昨天此时
select DATE_ADD(now(), Interval -1 day)

//7天后
select DATE_ADD(now(), Interval 7 day)

//一小时前
select DATE_ADD(now(), Interval -1 hour)
//一分钟前
select DATE_ADD(now(), Interval -1 minute)
//一秒钟前
select DATE_ADD(now(), Interval -1 second)
//昨天(年月日)
select date_format(DATE_ADD(now(), Interval 1 day),‘%Y%m%d‘)

//上个月第一天和最后一天
select date_sub(date_sub(date_format(now(),‘%Y%m%d‘),interval extract( day from now())-1 day),interval 1 month);
select date_sub(date_sub(date_format(now(),‘%Y%m%d‘),interval extract(day from now()) day),interval 0 month);
  
//某个字符串
select date_format(DATE_ADD(‘20090605123020‘, Interval 20 minute),‘%Y%m%d‘)
//第几周
select weekofyear( now() )
select weekofyear(‘20090606‘)

mysql中,会把‘20090707123050‘和‘20090707‘格式的字符串作为date类型转换。

在mysql中,没有类似oracle的to_char(num,format)函数,所以涉及到数字前面补0的情况需要特殊处理。

如select left(concat(‘00‘),@num),3)就会显示三位数字的字符串, @num=1时显示001,为123是显示123。

CONCAT(YEAR(a.createtime),LEFT(CONCAT(‘0‘,WEEKOFYEAR(a.createtime)),2))

以上是关于sql date时间加减几天几小时的主要内容,如果未能解决你的问题,请参考以下文章

JAVA实现Date日期加一天

转载 C#中日期类型DateTime的日期加减操作

小程序开发购物车加减几件demo

Javascript中求Date类型的差值增加/减少秒/分钟/小时/天等

sas将几分几秒转化为秒

java 获取本机当前时间并对小时任意加减