MySQL時間日期查詢方法與函數(shù)
MySQL應(yīng)用中,日期與查詢是非常普遍的。比如要查某天、某個星期、或者某個月內(nèi)的數(shù)據(jù),查詢兩個日期之間的天數(shù)差,查詢某天是星期幾等等。下面就介紹一下相關(guān)的MySQL時間與日期函數(shù),與它們的具體使用方法。
NOW() 函數(shù)MYSQL 有沒有像 MSSQL 的 getdate() 函數(shù)?有,就是 NOW()。
mysql> SELECT now();+---------------------+| now() |+---------------------+| 2011-10-27 09:49:42 |+---------------------+1 row in set
NOW() 函數(shù)返回當(dāng)前的日期和時間。
DATEDIFF() 函數(shù)DATEDIFF() 函數(shù)返回兩個日期之間的天數(shù)。
DATEDIFF(expr,expr2)
DATEDIFF() 返回起始時間 expr和結(jié)束時間expr2之間的天數(shù)。Expr和expr2為日期或 date-and-time 表達式。計算中只用到這些值的日期部分。
mysql> SELECT DATEDIFF(’2011-10-27’,’2011-09-05’) AS DiffDate;+----------+| DiffDate |+----------+| 52 |+----------+1 row in set查詢一周內(nèi)的數(shù)據(jù)
mysql> SELECT title FROM table WHERE datediff(FROM_UNIXTIME(date),now()) > -7;+------------------------------------+| title |+------------------------------------+| 什么是面向服務(wù)架構(gòu)SOA || 從菜鳥到編程高手的學(xué)習(xí)與認(rèn)知歷程 || JavaScript去除空格trim()的原生實現(xiàn) || C語言程序在內(nèi)存中的運行情況|| 為什么說Lisp到現(xiàn)在還很先進 || JavaScript截取中英文字符串 || 談?wù)凧avascript的匿名函數(shù) || 程序員需要具備的一些基本技能 || 美國社會的一些潛規(guī)則 || 二叉搜索樹的一些相關(guān)算法介紹 || JQuery仿淘寶滾動加載圖片 || 收藏一些規(guī)范化輸入輸出的PHP函數(shù) || 趣談編程語言結(jié)構(gòu)——函數(shù) || CSS設(shè)計一個三列布局的頁面 || 關(guān)于Android應(yīng)用apk的程序簽名 || JavaScript模擬打字效果 || 歐幾里德算法(輾轉(zhuǎn)相處法)練手 || JavaScript身份證號碼有效性驗證 || JavaScript對iframe的DOM操作|| 如何處理JSON中的特殊字符 || 一份騰訊2011筆試題 || PHP如何實現(xiàn)異步數(shù)據(jù)調(diào)用 || 網(wǎng)站運營需要了解的一些規(guī)律 || 勤于思考才能善于架構(gòu) |+------------------------------------+24 rows in set
同樣查詢一個月,一年,任意天數(shù)都可以這么使用。
查詢當(dāng)天則可以這么寫:
mysql> SELECT title FROM table WHERE datediff(FROM_UNIXTIME(date),now()) >= 0;+----------------------------+| post_title |+----------------------------+| 網(wǎng)站運營需要了解的一些規(guī)律 || 勤于思考才能善于架構(gòu) |+----------------------------+2 rows in set查詢某天是星期幾
DAYNAME(date)
返回date對應(yīng)的工作日名稱。
mysql> SELECT DAYNAME( NOW() );+------------------+| DAYNAME( NOW() ) |+------------------+| Thursday |+------------------+1 row in set
查詢該日期是當(dāng)周第幾天則這么寫:
mysql> SELECT DAYOFWEEK( NOW() );+--------------------+| DAYOFWEEK( NOW() ) |+--------------------+| 5 |+--------------------+1 row in set
返回date (1 = 周日, 2 = 周一, ..., 7 = 周六)對應(yīng)的工作日索引。這些索引值符合 ODBC標(biāo)準(zhǔn)。
相關(guān)文章:
1. 如何正確的進行Oracle數(shù)據(jù)庫性能完全保護2. ubuntu下使用SQLite3的基本命令3. 講解Oracle優(yōu)化器的優(yōu)化方式和優(yōu)化模式4. SQL SERVER – 檢測LOCK、終止會話 ID/UOW 的用戶進程5. DB2 V9.5工作負(fù)載管理之工作負(fù)載管理簡介6. 國內(nèi)學(xué)院派專家對DB2 9新產(chǎn)品贊不絕口7. SQLite教程(四):內(nèi)置函數(shù)8. MySQL存儲過程in、out和inout參數(shù)示例和總結(jié)9. 教你使用智能優(yōu)化器提高Oracle性能極限10. SQL Server數(shù)據(jù)庫的三種創(chuàng)建方法匯總
