MySQL修改时间函数 addDate(date , INTERVAL expr unit)

Posted Peter Jones

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了MySQL修改时间函数 addDate(date , INTERVAL expr unit)相关的知识,希望对你有一定的参考价值。

MySQL修改时间函数:

1. addDate(date,INTERVAL expr unit)   interval 代表时间间隔 :


SELECT NOW();           2018-06-20 15:00:00   -- 当前时间
SELECT ADDDATE(\'2018-06-20 15:00:00\',INTERVAL -60 SECOND) AS time;   2018-06-20 14:59:00      -- 减60秒
SELECT ADDDATE(\'2018-06-20 15:00:00\',INTERVAL -1 MINUTE) AS time;    2018-06-20 14:59:00            -- 减1分钟
SELECT ADDDATE(\'2018-06-20 15:00:00\',INTERVAL -1 HOUR) AS time;      2018-06-20 14:00:00      -- 减1小时
SELECT ADDDATE(\'2018-06-20 15:00:00\',INTERVAL -1 DAY) AS time;       2018-06-19 15:00:00            -- 减1天
SELECT ADDDATE(\'2018-06-20 15:00:00\',INTERVAL -1 MONTH) AS time;     2018-05-20 15:00:00      -- 减1个月
SELECT ADDDATE(\'2018-06-20 15:00:00\',INTERVAL -1 YEAR) AS time;      2017-06-20 15:00:00            -- 减1年

 

链接:https://blog.csdn.net/fengzijinliang/article/details/55259766  (mysql日期和字符相互转换方法

 

SELECT ADDDATE(\'2018-06-20 15:00:00\', INTERVAL - 90 DAY);             2018-03-22 15:00:00
SELECT date_format(\'2018-03-22 15:00:00\', \'%Y-%m-%d\');    2018-03-22        
SELECT CONCAT(\'2018-06-20\',\' 00:00:00\'); 2018-03-22 00:00:00
SELECT str_to_date(\'2018-06-20 00:00:00\',\'%Y-%m-%d %T\'); 2018-03-22 00:00:00
综合 : SELECT str_to_date(concat(date_format(ADDDATE(NOW(), INTERVAL - 90 DAY),\'%Y-%m-%d\'),\' 00:00:00\'),\'%Y-%m-%d %T\');  2018-03-22 00:00:00


2. date_format(date,’%Y-%m-%d’) ————–>oracle中的to_char();
3. str_to_date(date,’%Y-%m-%d’) ————–>oracle中的to_date();

 

%Y:代表4位的年份
%y:代表2为的年份

 

%m:代表月, 格式为(01……12)
%c:代表月, 格式为(1……12)

 

%d:代表月份中的天数,格式为(00……31)
%e:代表月份中的天数, 格式为(0……31)

 

%H:代表小时,格式为(00……23)
%k:代表 小时,格式为(0……23)
%h: 代表小时,格式为(01……12)
%I: 代表小时,格式为(01……12)
%l :代表小时,格式为(1……12)

 

%i: 代表分钟, 格式为(00……59) 【只有这一个代表分钟,大写的I 不代表分钟代表小时】

 

%r:代表 时间,格式为12 小时(hh:mm:ss [AP]M)
%T:代表 时间,格式为24 小时(hh:mm:ss)

 

%S:代表 秒,格式为(00……59)
%s:代表 秒,格式为(00……59)

 4.DATE_SUB(NOW(), INTERVAL 48 HOUR)

SELECT DATE_SUB(NOW(), INTERVAL 48 HOUR);  距离当前时间前移48小时的时间点   例如2018年8月31日01:13:27 --  2018-08-29 01:13:27

 


以上是关于MySQL修改时间函数 addDate(date , INTERVAL expr unit)的主要内容,如果未能解决你的问题,请参考以下文章

mysql 内置函数

mysql 内置函数

golang time AddDate的一个小细节

MySQL 日期函数大全(更新完成)

MySQL中判断日期间隔的方法

mysql 怎么得到一个时间距当月底有多少天