datediff()函数 与 timestampdiff()函数的区别 及使用。 |
您所在的位置:网站首页 › js计算时间差的函数有哪些 › datediff()函数 与 timestampdiff()函数的区别 及使用。 |
在操作数据库时,经常会使用到“时间范围取值、取时间差”的情况。今天就学习了一个这两个求时间差的函数。 1.先从名字上来区分这两个函数的区别。 datediff() //看名字“直译”过来的意思是 《日期差异》 (胡乱翻译的不是很正确哦!) timestampdiff() //这个也“值译”过来 《时间戳差异》从名字就能大概区分他们的租作用,一个比较时间戳的,一个是比较日期的。 知道了他们的具体是干什么的,那就测试一下吧。 2.测试datediff()DATEDIFF() 函数返回两个日期之间的天数。 date1 和 date2 参数是合法的日期或日期/时间表达式。 只有值的日期部分参与计算。 假设action表中有开始活动日期,结束活动日期。查看举行3天活动有那写项目。 SELECT * from action where DATEDIFF(startDate,endDate) = 3;测试一下MySQL: SELECT DATEDIFF('2018-05-09 08:00:00','2018-05-09') AS DiffDate; //结果 0 ; 表示 2018-05-09 与 2018-05-09之间没有日期差。这里是不比较时分秒的。下面验证带上时分秒有没有差别。 SELECT DATEDIFF('2018-05-09 00:00:00','2018-05-09 23:59:59') AS DiffDate; //结果 0 ; SELECT DATEDIFF('2018-05-08 23:59:59','2018-05-09 00:00:00') AS DiffDate; //结果 -1; SELECT DATEDIFF('2018-05-09 00:00:00','2018-05-08 23:59:59') AS DiffDate; //结果 1;测试一下sqlserver DATEDIFF() 函数返回两个日期之间的时间。 //语法 DATEDIFF(datepart,startdate,enddate)startdate 和 enddate 参数是合法的日期表达式。 datepart 参数可以是下列的值: 测试一下MySQL select timestampdiff(YEAR,"2018-01-01 15:15:16","2019-08-23 15:15:16") as timestamodiff; //结果1。相差一年。 select timestampdiff(YEAR,"2019-08-22 15:15:19","2018-12-23 15:15:16") as timestamodiff; //结果 -1,也是相差一年。 select timestampdiff(YEAR,"2019-08-22 15:15:19","2018-08-22 15:15:16") as timestamodiff; //结果0,相差不到一年 select timestampdiff(MONTH,"2018-08-22 15:15:16","2018-07-23 15:15:16") as timestamodiff; // 结果 0 相差不到一个月 select timestampdiff(MONTH,"2018-08-22 15:15:16","2018-07-01 15:15:16") as timestamodiff; // 结果 -1 相差一个月 select timestampdiff(MONTH,"2018-08-22 15:15:19","2018-09-23 15:15:16") as timestamodiff; // 结果 1 想差一个月 select timestampdiff(DAY,"2018-08-22 15:15:16","2018-08-23 15:15:16") as timestamodiff; // 结果 1 想差一天 select timestampdiff(DAY,"2018-08-22 15:15:19","2018-08-23 15:15:16") as timestamodiff; // 结果 0 想差不到一天 select timestampdiff(DAY,"2018-08-23 15:15:19","2018-08-22 15:15:16") as timestamodiff; // 结果 -1 想差一天 |
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |