码迷,mamicode.com
首页 > 数据库 > 详细

mysql的内建日期处理函数

时间:2018-04-01 11:49:38      阅读:263      评论:0      收藏:0      [点我收藏+]

标签:form   span   class   str   mys   添加   timestamp   重要   最后一天   

下面的表格列出了MySQL 中最重要的内建日期函数:

函数描述
NOW() 返回当前的日期和时间
CURDATE() 返回当前的日期
CURTIME() 返回当前的时间
DATE() 提取日期或日期/时间表达式的日期部分
EXTRACT() 返回日期/时间按的单独部分
DATE_ADD() 给日期添加指定的时间间隔
DATE_SUB() 从日期减去指定的时间间隔
DATEDIFF() 返回两个日期之间的天数
DATE_FORMAT() 用不同的格式显示日期/时间

 

 

 

 

 

 

 

 

 

时间差函数(TIMESTAMPDIFF、DATEDIFF)

需要用MySQL计算时间差,使用TIMESTAMPDIFF、DATEDIFF,记录一下实验结果

--0
select datediff(now(), now());

--2
select datediff(2015-04-22 23:59:00, 2015-04-20 00:00:00);

--2
select datediff(2015-04-22 00:00:00, 2015-04-20 23:59:00);

--1
select TIMESTAMPDIFF(DAY, 2015-04-20 23:59:00, 2015-04-22 00:00:00);

--2
select TIMESTAMPDIFF(DAY, 2015-04-20 00:00:00, 2015-04-22 00:00:00);

--2
select TIMESTAMPDIFF(DAY, 2015-04-20 00:00:00, 2015-04-22 12:00:00);

--2
select TIMESTAMPDIFF(DAY, 2015-04-20 00:00:00, 2015-04-22 23:59:00);

--71
select TIMESTAMPDIFF(HOUR, 2015-04-20 00:00:00, 2015-04-22 23:00:00);

--4260
select TIMESTAMPDIFF(MINUTE, 2015-04-20 00:00:00, 2015-04-22 23:00:00);

日期转换计算函数(date_add、day、date_format、str_to_date)

-- 用日期与字符串转换,计算当月第一天、下月第一天
select curdate() as 当前日期, 
DATE_FORMAT(curdate(), %Y-%m) as 当前月份, 
str_to_date(concat(DATE_FORMAT(curdate(), %Y-%m), -01), %Y-%m-%d) as 当前月的第一天, 
date_add(str_to_date(concat(DATE_FORMAT(curdate(), %Y-%m), -01), %Y-%m-%d), interval 1 month) as 下月的第一天;

-- 当前月的最后一天
select last_day(curdate());

-- 下月第一天
select date_add(last_day(curdate()), interval 1 day);

-- 当天为当月的第几天
select day(curdate());

-- 当月第一天
select date_add(curdate(), interval 1-(day(curdate())) day);

 

mysql的内建日期处理函数

标签:form   span   class   str   mys   添加   timestamp   重要   最后一天   

原文地址:https://www.cnblogs.com/shamo89/p/8685935.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!