十年网站开发经验 + 多家企业客户 + 靠谱的建站团队
量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决
MySql计算两个日期时间的差函数:
创新互联公司从2013年开始,是专业互联网技术服务公司,拥有项目成都网站设计、网站建设、外贸网站建设网站策划,项目实施与项目整合能力。我们以让每一个梦想脱颖而出为使命,1280元嘉禾做网站,已为上家服务,为嘉禾各地企业和个人服务,联系电话:13518219792
第一种: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
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
mysql select to_days(now())-to_days(date_format('2010-01-01','%y-%m-%e')) from
dual;
+--------------------------------------------------------------+
| to_days(now())-to_days(date_format('2010-01-01','%y-%m-%e')) |
+--------------------------------------------------------------+
| 111 |
+--------------------------------------------------------------+
1 row in set (0.00 sec)
MySQL计算1000分钟后的时间,首先我们要知道。一小时等于60分钟,那么十小时的话就是600分钟,那么100小时的话就是6000分钟,所以他应该是在十小时之外,十小时的话我们当做他是。600分钟,那么20小时的话就是1200分钟,所以他应该是19时到20小时之间。
用时间戳来计算
SELECT (UNIX_TIMESTAMP(NOW())-UNIX_TIMESTAMP('2015-04-20 15:12:12'))/60;
也就是得到两个时间相差的秒数,然后除60得到分种。