http://c.biancheng.net/mysql/datediff.html
MySQL 中 DATEDIFF(date1,date2) 返回起始时间 date1 和结束时间 date2 之间的天数。date1 和 date2 为日期或 date-and-time 表达式。计算时只用到这些值的日期部分。【实例】使用 DATEDIFF() 函数计算两个日期之间的间隔天数,输入的 SQL 语句和执行结果如下所示。
mysql> SELECT DATEDIFF(‘2017-11-30‘,‘2017-11-29‘) AS COL1, -> DATEDIFF(‘2017-11-30‘,‘2017-12-15‘) AS col2;+------+------+| COL1 | col2 |+------+------+| 1 | -15 |+------+------+1 row in set (0.00 sec)
由运行结果可知,DATEDIFF() 函数返回 date1-date2 后的值,因此 DATEDIFF(‘2017-11-30‘,‘2017-11-29‘) 的返回值为 1,DATEDIFF(‘2017-11-30 23:59:59‘,‘2017-12-15‘) 的返回值为 -15。
MySQL DATEDIFF函数:获取两个日期之间的时间间隔
标签:get ted inf and 因此 结束时间 表达 date 函数返回
小编还为您整理了以下内容,可能对您也有帮助:
datediff函数用法!
1、datediff函数语法用法:
表达式DateDiff(timeinterval,date1,date2 [, firstdayofweek [, firstweekofyear]])
允许数据类型: timeinterval 表示相隔时间的类型,代码为:年份 yy、yyyy 季度 qq、q;月份 mm、m;每年的某一日 dy、y;日期 dd、d;星期 wk、ww;工作日 dw;小时 hh;分钟 mi、n;秒 ss、s;毫秒 ms。
2、datediff函数用法示例:
<%
fromDate = #9/9/00#
toDate = #1/1/2000#
response.write "There are " & _
DateDiff("d",fromDate,toDate) & _
" days to millenium from 9/9/00."
%>
返回结果: 从9/9/00 到2000年还有 150 天。
扩展资料:
datediff函数应用范围:
1,该函数在mysql中可用
2,该函数在sybase中可用
3,该函数在在oracle中不可用!
------------------------------------------------------------
select datediff(''d'','2003-01-01','2003-01-02')返回的是1;
select datediff(''d'','2003-01-02','2003-01-01')返回的是-1;
可见datediff返回的是date2和date1之间在给定参数timeinterval下的差值。
注:
在sql2000下测试 "h"时是错误的,应该是 hh,例如:
select datediff(hh,'2003-01-01','2003-01-02') 返回的是24。
参考资料:百度百科-DateDiff()
mysql两个日期计算天数
TO_DAYS(date字段1) - TO_DAYS(date字段2)
1、利用TO_DAYS函数
select to_days(now()) - to_days('19930908')
2、利用DATEDIFF函数
select datediff(now(),'19930908')
参数1 - 参数2 等于间隔天数
在 MySQL 中创建表时,对照上面的表格,选择到合适自己的数据类型。选择datetime 还是 timestamp会有点犯难。这两个日期时间类型各有优点:datetime 的日期范围比较大;timestamp 所占存储空间比较小,只是 datetime 的一半。
扩展资料:
在ORDER BY操作中,MySQL 只有在排序条件不是一个查询条件表达式的情况下才使用索引。(虽然如此,在涉及多个数据表查询里,即使有索引可用,那些索引在加快 ORDER BY 方面也没什么作用)。
如果某个数据列里包含许多重复的值,就算为它建立了索引也不会有很好的效果。比如说,如果某个数据列里包含的净是些诸如 “0/1” 或 “Y/N” 等值,就没有必要为它创建一个索引。
参考资料来源:百度百科-mySQL
datedif函数用于计算两个日期之间的时间是什么?
DATEDIF(Start_Date,End_Date,Unit)。
Start_Date:为一个日期,它代表时间段内的第一个日期或起始日期。
End_Date:为一个日期,它代表时间段内的最后一个日期或结束日期。
Unit:为所需信息的返回类型。
假如A1单元格写的也是一个日期,那么下面的三个公式可以计算出A1单元格的日期和编辑当天的时间差,分别是年数差,月数差,天数差。注意下面公式中的引号和逗号括号都是在英文状态下输入的。
=DATEDIF(A1,TODAY(),"Y")计算年数差
=DATEDIF(A1,TODAY(),"M")计算月数差
=DATEDIF(A1,TODAY(),"D")计算天数差
"Y" 时间段中的整年数。
"M" 时间段中的整月数。
"D" 时间段中的天数。
"MD" 起始日期与结束日期的同月间隔天数,忽略日期中的月份和年份。
"YD" 起始日期与结束日期的同年间隔天数,忽略日期中的年份。
"YM" 起始日期与结束日期的同年间隔月数,忽略日期中年份。
如何使用mysql计算两个日期之间的时间差
MySql计算两个日期时间的差函数:
第一种:TIMESTAMPDIFF函数,需要传入三个参数,第一个是比较的类型,可以比较FRAC_SECOND、SECOND、 MINUTE、 HOUR、 DAY、 WEEK、 MONTH、 QUARTER或 YEAR几种类型,第二个和第三个参数是待比较的两个时间,比较是后一个时间减前一个时间,具体用法如下:
[sql] view plain copy
SELECT TIMESTAMPDIFF(DAY,'2012-10-01','2013-01-13');
返回结果是104,这里比较的是两个时间的天数差;
[sql] view plain copy
SELECT TIMESTAMPDIFF(MONTH,'2012-10-01','2013-01-13');
这里比较的是两个时间的月份,返回的结果是3;
第二种方法: DATEDIFF函数,就传入两个日期函数,比较的DAY天数,第一个参数减去第二个参数的天数值,具体用法如下:
[sql] view plain copy
SELECT DATEDIFF('2013-01-13','2012-10-01');
返回的结果也是104。
另外其它的日期函数,
now()函数返回的是当前时间的年月日时分秒,如:2008-12-29 16:25:46
CURDATE()函数返回的是年月日信息: 如:2008-12-29
CURTIME()函数返回的是当前时间的时分秒信息,如:16:25:46
另外,如果我们想对一个包含年月日时分秒日期格式化成年月日日期,可以使用DATE(time)函数,如
DATE(now()) 返回的是 2008-12-29