【Mysql】求出離最近相差X天的項,sql語句關於日期的比對,mysqlsql

來源:互聯網
上載者:User

【Mysql】求出離最近相差X天的項,sql語句關於日期的比對,mysqlsql

對於一張如下的testtable表,如果要查詢date離現在相差的30年的日期


則應該使用如下的sql語句:

select * from testtablewheretimestampdiff(year,date,now())<30

這種方法,即使date這個欄位是varchar類型也是可以查詢成功的。

timestampdiff函數中,第一個欄位是單位,可以改成second,day,month等

而如下的查詢方法,考慮到1985離現在相差30年,雖然簡單,但是如果日期的變更,比如明年,這條語句則又要改成1986-1-1。

同時,最致命的是,如果date欄位由於各種原因使用varchar類型儲存的,

則根本就無法查詢成功。

select * from testtablewhere date>'1985-1-1'


相關文章

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.