飙血推荐
  • HTML教程
  • MySQL教程
  • JavaScript基础教程
  • php入门教程
  • JavaScript正则表达式运用
  • Excel函数教程
  • UEditor使用文档
  • AngularJS教程
  • ThinkPHP5.0教程

mysql时间日期相加相减实现

时间:2021-12-15  作者:匿名  
select  * from  yq1012
where    域名ate   = 
date_add(\'2015-06-24\', interval 1 month)
mysql时间日期相加相减实现
分享篇mysql中日期的一些操作,就是我们常常会用到的mysql时间日期的相加或者相减的了,这个mysql也自己带了函数,有需要的朋友可以参考一下。

最简单的方法

select TO_DAYS(str_to_date(\'12/1/2001 12:00:00 AM\',\'%m/%d/%Y\')) -
TO_DAYS(str_to_date(\'11/28/2001 12:00:00 AM\',\'%m/%d/%Y\'))  as a from table1

得出天数

SELECT TO_DAYS(\'1999-02-01)-TO_DAYS(\'1999-01-01\')

 

下面是mysql参考手册上的说明
MySQL 为日期增加一个时间间隔:date_add()

set @dt = now();
select date_add(@dt, interval 1 day); -- add 1 day
select date_add(@dt, interval 1 hour); -- add 1 hour
select date_add(@dt, interval 1 minute); -- ...
select date_add(@dt, interval 1 second);
select date_add(@dt, interval 1 microsecond);
select date_add(@dt, interval 1 week);
select date_add(@dt, interval 1 month);
select date_add(@dt, interval 1 quarter);
select date_add(@dt, interval 1 year);
select date_add(@dt, interval -1 day); -- sub 1 day

MySQL adddate(), addtime()函数,可以用 date_add() 来替代。下面是 date_add() 实现 addtime() 功能示例:
mysql> set @dt = \'2008-08-09 12:12:33\';
mysql>
mysql> select date_add(@dt, interval \'01:15:30\' hour_second);
+------------------------------------------------+
| date_add(@dt, interval \'01:15:30\' hour_second) |
+------------------------------------------------+
| 2008-08-09 13:28:03 |
+------------------------------------------------+
mysql> select date_add(@dt, interval \'1 01:15:30\' day_second);
+-------------------------------------------------+
| date_add(@dt, interval \'1 01:15:30\' day_second) |
+-------------------------------------------------+
| 2008-08-10 13:28:03 |
+-------------------------------------------------+

date_add() 函数,分别为 @dt 增加了“1小时 15分 30秒” 和 “1天 1小时 15分 30秒”。建议:总是使用 date_add() 日期时间函数来替代 adddate(), addtime()。

 

2. MySQL 为日期减去一个时间间隔:date_sub()

mysql> select date_sub(\'1998-01-01 00:00:00\', interval \'1 1:1:1\' day_second);
+----------------------------------------------------------------+
| date_sub(\'1998-01-01 00:00:00\', interval \'1 1:1:1\' day_second) |
+----------------------------------------------------------------+
| 1997-12-30 22:58:59 |
湘ICP备14001474号-3  投诉建议:234161800@qq.com   部分内容来源于网络,如有侵权,请联系删除。