我有一些統計數據,我需要每月報告一次。我需要我的查詢返回0的統計資料不存在。我知道這樣做的唯一方法是使用SQL在指定的時間段內生成一個天數列表,並且我需要報告的統計數據。MySQL選擇日期,連接統計數據 - 如何?
問題是......我從來沒有從這樣的表中選擇......我該怎麼做?
我有一些統計數據,我需要每月報告一次。我需要我的查詢返回0的統計資料不存在。我知道這樣做的唯一方法是使用SQL在指定的時間段內生成一個天數列表,並且我需要報告的統計數據。MySQL選擇日期,連接統計數據 - 如何?
問題是......我從來沒有從這樣的表中選擇......我該怎麼做?
我結束了剛剛使用SQL來拉取給定期間的數據並處理PHP端的所有其他數據。不完全是我想要的,但它的工作原理。
比較你的返回值,對於從來沒有存在過你的返回值可能會是空的統計,所有你需要用空比較返回值,如果返回null 0,否則返回實際結果
select s.Name , IFNULL(d.Value, 0) as Value from Statustic s LEFT JOIN t_Data d on (d.Stat_ID=s.ID)
,你可以使用此鏈接 http://dev.mysql.com/doc/refman/5.0/en/comparison-operators.html#function_isnull
閱讀更多如果值NULL使用
SELECT IFNULL(statistic, 0) AS statistic FROM myTable;
類似於http://stackoverflow.com/questions/2693320/sql-date-rows-for-inactivity-days,http://stackoverflow.com/questions/75752/what-is-the-most-straightforward在-sql-results-on-any中,填充空日期,http://stackoverflow.com/questions/2670183/displaying-zero-valued-months-with-sql等... – 2010-04-22 20:43:41