MySQL時間日期查詢方法與函數

MySQL應用中,日期與查詢是非常普遍的。比如要查某天、某個星期、或者某個月內的數據,查詢兩個日期之間的天數差,查詢某天是星期幾等等。下面就介紹一下相關的MySQL時間與日期函數,與它們的具體使用方法。

NOW() 函數

mysql 有沒有像 mssql 的 getdate() 函數?有,就是 now()。

mysql>?SELECT?now();  +---------------------+  |?now()???????????????|  +---------------------+  |?2011-10-27?09:49:42?|  +---------------------+  1?row?in?set

NOW() 函數返回當前的日期和時間。

DATEDIFF() 函數

DATEDIFF() 函數返回兩個日期之間的天數。

DATEDIFF(expr,expr2)

DATEDIFF() 返回起始時間 expr和結束時間expr2之間的天數。Expr和expr2為日期或 date-and-time 表達式。計算中只用到這些值的日期部分。

mysql>?SELECT?DATEDIFF('2011-10-27','2011-09-05')?AS?DiffDate;  +----------+  |?DiffDate?|  +----------+  |???????52?|  +----------+  1?row?in?set

查詢一周內的數據

mysql>?SELECT?title?FROM?table?WHERE?datediff(FROM_UNIXTIME(date),now())?>?-7;  +------------------------------------+  |?title?????????????????????????|  +------------------------------------+  |?什么是面向服務架構SOA??????????????|  |?從菜鳥到編程高手的學習與認知歷程???|  |?JavaScript去除空格trim()的原生實現?|  |?C語言程序在內存中的運行情況????????|  |?為什么說Lisp到現在還很先進?????????|  |?JavaScript截取中英文字符串?????????|  |?談談Javascript的匿名函數???????????|  |?程序員需要具備的一些基本技能???????|  |?美國社會的一些潛規則???????????????|  |?二叉搜索樹的一些相關算法介紹???????|  |?JQuery仿淘寶滾動加載圖片???????????|  |?收藏一些規范化輸入輸出的PHP函數????|  |?趣談編程語言結構——函數?????????????|  |?CSS設計一個三列布局的頁面??????????|  |?關于Android應用apk的程序簽名???????|  |?JavaScript模擬打字效果?????????????|  |?歐幾里德算法(輾轉相處法)練手?????|  |?JavaScript身份證號碼有效性驗證?????|  |?JavaScript對iframe的DOM操作????????|  |?如何處理JSON中的特殊字符???????????|  |?一份騰訊2011筆試題?????????????????|  |?PHP如何實現異步數據調用????????????|  |?網站運營需要了解的一些規律?????????|  |?勤于思考才能善于架構???????????????|  +------------------------------------+  24?rows?in?set

同樣查詢一個月,一年,任意天數都可以這么使用。

查詢當天則可以這么寫:

mysql>?SELECT?title?FROM?table?WHERE?datediff(FROM_UNIXTIME(date),now())?>=?0;  +----------------------------+  |?post_title?????????????????|  +----------------------------+  |?網站運營需要了解的一些規律?|  |?勤于思考才能善于架構???????|  +----------------------------+  2?rows?in?set

查詢某天是星期幾

DAYNAME(date)

返回date對應的工作日名稱。

mysql>?SELECT?DAYNAME(?NOW()?);  +------------------+  |?DAYNAME(?NOW()?)?|  +------------------+  |?Thursday?????????|  +------------------+  1?row?in?set

查詢該日期是當周第幾天則這么寫:

mysql>?SELECT?DAYOFWEEK(?NOW()?);  +--------------------+  |?DAYOFWEEK(?NOW()?)?|  +--------------------+  |??????????????????5?|  +--------------------+  1?row?in?set

返回date (1 = 周日, 2 = 周一, …, 7 = 周六)對應的工作日索引。這些索引值符合 ODBC標準。

以上就是MySQL時間日期查詢方法與函數的內容,更多相關內容請關注PHP中文網(www.php.cn)!

? 版權聲明
THE END
喜歡就支持一下吧
點贊8 分享