我有一個表'my_table'。它具有以下數據:SQL查詢在表中不存在的日期返回nil
ID --- Date
1 --- 01/30/2012
2 --- 01/30/2012
3 --- 05/30/2012
我可以寫一個SQL查詢返回特定日期之間的ID的數量,按月份進行分組,這樣的:
{"01/30/2012" => 2, "05/30/2012" => 1}
我怎樣才能得到一個結果是具有值爲'0'的所需日期之間的所有缺失月份,如下所示:
{"01/30/2012" => 2, "02/30/2012" => 0, "03/30/2012" => 0, "04/30/2012" => 0, "05/30/2012" => 1}
在此先感謝。
你有任何可能的日曆表嗎?如果沒有,我建議爲此創建一個,並將它加入到你的表中 - 你使用哪種RDBM(Oracle/MySQL/SQL Server/DB2/... +版本)? – Aprillion
我正在使用PostgreSQL。將嘗試創建一個日曆表。謝謝。 – Myxtic
如果你需要'02/30/2012'使它成爲一個varchar類型而不是日期;)順便說一句,爲什麼不使用月份(整數像201201)而不是不存在的日期? – Aprillion