我有一個簡單的系統來監視和繪製MySQL服務器的統計數據。這些服務以PHP編寫並返回JSON。 我們堅持的問題是,因爲今天是2014年7月1日...過去七天圖表和表格的值變爲零。日期計算邏輯在表格輸出中給出正確的日期。我試圖手動調用服務並檢查,實際上JSON中的值都是零。 大多數這個模塊中的查詢使用下列內容:MySQL天減月不工作
$query_string = SELECT new_user_count AS new_user_count
FROM kpi_summaries
WHERE DATE(date) = CURDATE()-".$n."
AND data_type=1";
在一個簡單的循環,我使用這個查詢字符串來獲取值從每天早上7最後的日子。這工作到昨天完美(因爲我猜,扣除CURDATE後的日期都在同一個月)。
另一種解釋我的疑問的方式是:如果3天前是上個月的日期,那麼使用CURDATE()是否是不正確的?如果這是錯誤的,那麼正確的方法是什麼?我需要使用DATE_SUB()或類似的東西..?
你試過了:'curdate() - interval $ n day'? –
@GordonLinoff它的工作原理。非常感謝。但我很好奇。你能告訴我爲什麼這個工程和curdate() - $ n不是,而在同一個月,兩個工作..? –