打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
MYSQL中 datediff、timestampdiff函数的使用

对mysql中日期范围搜索的大致有三种方式:

1、between and语句;

2、datediff函数;

3、timestampdiff函数;

下面就具体说明下这三种方式:

第一种: between and语句

select * from dat_document where commit_date between '2018-07-01' and '2018-07-04'

   结果是1号到3号的数据,这是因为时间范围显示的实际上只是‘2018-07-01 00:00:00’到'2018-07-04 00:00:00'之间的数据,而'2018-07-04'的数据就无法显示出来,between and对边界还需要进行额外的处理.

第二种: datediff函数

     datediff函数返回两个日期之间的天数

     语法:DATEDIFF(date1,date2)

SELECT DATEDIFF('2018-07-01','2018-07-04');

     运行结果:-3

     所以,datediff函数对时间差值的计算方式为date1-date2的差值。

第三种: timestampdiff函数

    timestampdiff函数日期或日期时间表达式之间的整数差

    语法:TIMESTAMPDIFF(interval,datetime1,datetime2),比较的单位interval可以为以下数值

  1.     FRAC_SECOND。表示间隔是毫秒
  2. SECOND。秒
  3. MINUTE。分钟
  4. HOUR。小时
  5. DAY。天
  6. WEEK。星期
  7. MONTH。月
  8. QUARTER。季度
  9. YEAR。年
select TIMESTAMPDIFF(DAY,'2018-07-01 09:00:00','2018-07-04 12:00:00');
    运行结果:3

    所以,timestampdiff函数对日期差值的计算方式为datetime2-datetime1的差值。

    请注意:DATEDIFFTIMESTAMPDIFF对日期差值的计算方式刚好是相反的。

另外,如果是在xml文件中对计算的值进行比较的话,有可能会用到<、>、<=、>=等,xml会报错,这里需要对这些符号进行替换。

原符号<<=>>=&''
替换符号<<=>>=&'"

[sql] view plaincopyprint?
  1.   
[sql] view plaincopyprint?
  1.   

本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
程序员应知应会之Mysql里怎么计算时间日期之差?
MySQL 获得当前日期时间 函数_冰山上的來音
SQL干货:Mysql日期时间函数
扎心了!面试时遇到要手写sql,结果函数拼写不出来
MySQL DATEDIFF() 函数
MySQL case when then 语句使用和时间函数使用
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服