我遇到了MySQL format_date問題,不明白爲什麼。我有以下爲我的代碼部分:MySQL FORMAT_DATE%d返回'0'
date_format(NOW() + INTERVAL 3 DAY, '%Y-%m-%d')
這似乎是做工精細,除了那無論我選擇日期時,%d正在恢復作爲一個零(0)的事實。如果我將%d更改爲%e,我可以得到正確的日期,但我使用它來比較日期,因此我需要低於10的數字的前導零。這是數據庫設置,還是我錯過了明顯的東西?
在此先感謝。
更新:我覺得它有什麼東西在數據庫中,因爲當我簡化查詢到這一點:
$q = "SELECT date_format(NOW() + INTERVAL 3 DAY, '%Y-%m-%d') as 'today' from content_field_date LIMIT 1";
「今天」打印出爲「2012-03-0」
同時,這樣的:
$q = "SELECT date_format(NOW() + INTERVAL 3 DAY, '%Y-%m-%e') as 'today' from content_field_date LIMIT 1";
正確返回 '2012-03-17'
Zeth
奇。如果我運行'SELECT date_format(NOW()+ INTERVAL 3 DAY,'%Y-%m-%d')'它會正確顯示。我想知道它是否與你的語言環境有關? – 2012-03-14 19:32:04
你能顯示完整的查詢嗎?這不應該發生。 – 2012-03-14 19:32:55
它在這裏也不顯示'0'。如果你的目標是比較日期,你也可以在mysql中完成。 – 2012-03-14 19:35:02