2013-04-16 59 views
1

希望有人能幫助,MySQL的WHERE語句日期問題

什麼我真的想要做的是拉數據庫中的所有結果對於任何給定月份, 是可能的使用MySQL查詢(不使用PHP)。

即時通訊使用模板的應用程序與我唯一的訪問是通過我的MySQL哪裏的聲明,所以我需要從「2013年4月1日」工作了,這個月是什麼,抓住它,如果它是我想要的。

下面的代碼工作,但2013年顯然也與我聯繫。

`SELECT * FROM table_name WHERE Display_Date => 2013-04-01 AND Display_Date <= 2013-04-30 LIMIT 10` 
+0

日期/時間處理更多的功能是DISPLAY_DATE列日期時間列? – Sebas

回答

3
SELECT 
    * 
FROM 
    table_name 
WHERE 
    MONTH(Display_Date) = MONTH(CURDATE()) 
AND YEAR(Display_Date) = YEAR(CURDATE()) 

參考

+0

哦,我的上帝!,它很容易。我花了幾個小時來提供我的努力!非常感謝。所以下面的代碼會讓我的2004年4月正確嗎?它很難嘗試,因爲數據庫目前只有四月份的條目:SELECT * FROM table_name WHERE MONTH(Display_Date)= 4 AND YEAR(Display_Date)= 2013 LIMIT 10 – mark

0

使用MySQL的函數MONTH()轉換爲紀元以來的秒數。這將允許以這種方式進行範圍比較。

例如

SELECT * FROM table_name WHERE MONTH(Display_Date)=MONTH(NOW()); 

有在relavent MYSQL documentation