MySQL數(shù)據(jù)庫(kù)中year()函數(shù)是求某個(gè)特定日期中的年份,代碼如下:
創(chuàng)新互聯(lián)長(zhǎng)期為成百上千家客戶提供的網(wǎng)站建設(shè)服務(wù),團(tuán)隊(duì)從業(yè)經(jīng)驗(yàn)10年,關(guān)注不同地域、不同群體,并針對(duì)不同對(duì)象提供差異化的產(chǎn)品和服務(wù);打造開放共贏平臺(tái),與合作伙伴共同營(yíng)造健康的互聯(lián)網(wǎng)生態(tài)環(huán)境。為絳縣企業(yè)提供專業(yè)的做網(wǎng)站、網(wǎng)站設(shè)計(jì),絳縣網(wǎng)站改版等技術(shù)服務(wù)。擁有十多年豐富建站經(jīng)驗(yàn)和眾多成功案例,為您定制開發(fā)。
select '2015-08-11' as date,year('2015-08-11') as year;
確定一個(gè)日期是一年中的第幾個(gè)季度,可以用QUARTER()函數(shù)實(shí)現(xiàn),代碼如下:
SELECT '2015-08-11' AS DATE,QUARTER('2015-08-11') AS QUARTER;
返回一個(gè)日期是一年中的月份,利用month()函數(shù)實(shí)現(xiàn),代碼如下:
SELECT '2015-08-11' AS DATE,MONTH('2015-08-11') AS MONTH;
獲取一個(gè)確定日期是一個(gè)月份中的多少號(hào),可以用day()函數(shù)求得,具體實(shí)現(xiàn)代碼如下:
SELECT '2015-08-11' AS DATE,DAY('2015-08-11') AS DAY;
有時(shí)日期中帶有時(shí)間,而如何獲取小時(shí)數(shù),這可以利用自帶的函數(shù)hour()實(shí)現(xiàn),代碼如下:
SELECT '2015-08-11 12:20:45' AS DATE,HOUR('2015-08-11 12:20:45') AS HOUR;
求取日期時(shí)間中的分鐘數(shù),可以利用MINUTE()函數(shù)實(shí)現(xiàn),代碼如下:
SELECT '2015-08-11 12:20:45' AS DATE,MINUTE('2015-08-11 12:20:45') AS MINUTE;
最后,獲取時(shí)間中的秒數(shù),利用SECOND()函數(shù)實(shí)現(xiàn),代碼如下:
SELECT '2015-08-11 12:20:45' AS DATE,SECOND('2015-08-11 12:20:45') AS SECOND;
方法一:傳統(tǒng)方式,即指定開始時(shí)間和結(jié)束時(shí)間,用"between”或者"",""來(lái)建立條件,比如查詢2010年3月1日到2010年3月2日的數(shù)據(jù)條數(shù),則可以使用
復(fù)制代碼 代碼如下:
select count(*) from sometable where datetimecolumn='2010-03-01 00:00:00' and datetimecolumn'2010-03-02 00:00:00'
但是,這種方法由于時(shí)間不是整數(shù)型數(shù)據(jù),所以在比較的時(shí)候效率較低,所以如果數(shù)據(jù)量較大,可以將時(shí)間轉(zhuǎn)換為整數(shù)型的UNIX時(shí)間戳,這就是方法二。
select curDate(); #獲取當(dāng)前日期select curTime(); #獲取當(dāng)前時(shí)間select now(); #獲取當(dāng)前日期+時(shí)間 列舉1個(gè)天數(shù)加減的例子,其他的看英文意思就可以理解了 select date_add(now(), interval 1 day); #當(dāng)前日期天數(shù)+1 select date_add(now(), interval -1 day); #當(dāng)前日期天數(shù)-1 select date_add(now(), interval 1 hour); select date_add(now(), interval 1 minute); select date_add(now(), interval 1 second); select date_add(now(), interval 1 microsecond); select date_add(now(), interval 1 week); select date_add(now(), interval 1 month); select date_add(now(), interval 1 quarter); select date_add(now(), interval 1 year); date_sub與date_add功能整合相反 select date_sub(now(), interval 1 day); #當(dāng)前日期天數(shù)-select date_sub(now(), interval -1 day); #當(dāng)前日期天數(shù)+select date_sub(now(), interval 1 hour); select date_sub(now(), interval 1 minute)select date_sub(now(), interval 1 second)select date_sub(now(), interval 1 microsecond)select date_sub(now(), interval 1 week)select date_sub(now(), interval 1 month)select date_sub(now(), interval 1 quarter)select date_sub(now(), interval 1 year); datediff函數(shù)計(jì)算兩個(gè)日期間隔的天數(shù) datediff(date1, date2); #date1 - date2 timediff函數(shù)計(jì)算兩個(gè)時(shí)間間隔 timediff(time1, time2); #time1 - time2 time1和time2的格式必須要一樣,返回時(shí)間差 str_to_date(str, format) 字符串轉(zhuǎn)換為日期 select str_to_date('11/09/2014', '%m/%d/%Y'); -- 2014-11-09 步驟閱讀
使用mysql的日期函數(shù)吧:
select * from A where DATE(data) = '2012-07-09';
這個(gè)可以準(zhǔn)確的查詢到7.9號(hào)這天的數(shù)據(jù),而且效率很高。