我有這樣的SQL查詢從表中檢索的ID有3列:ID,國家和年齡SQL查詢算上零
SELECT Country,
(CASE
WHEN AGE BETWEEN 0 AND 9 THEN '0-9'
WHEN AGE BETWEEN 10 AND 19 THEN '10-19'
WHEN AGE BETWEEN 20 AND 29 THEN '20-29'
WHEN AGE BETWEEN 30 AND 39 THEN '30-39'
WHEN AGE BETWEEN 40 AND 49 THEN '40-49'
ELSE '50+'
END) Age_Bins, COUNT (DISTINCT ID)
FROM MYTABLE
GROUP BY Country, Age_Bins;
結果我得到的是這樣的:
UK '0-9' 7;
UK '20-29' 14;
etc...
但我想要的還有英國'10-19'0(那個年齡段沒有ID)。如何修改sql代碼以使輸出數爲零。由於
我喜歡這個解決方案,因爲它看起來很簡單,雖然它不直接使用「COUNT」。但是,我不知道它與上面介紹的第一種解決方案相比是否有任何缺點。 – francogrex 2010-09-10 19:17:32
我在需要「容器」或「桶」的實際應用程序中始終使用此虛擬列方法。它執行速度快,結果準確。該查詢很容易理解和維護。我知道沒有缺點。如何進行投票? :-) – Tim 2010-09-11 11:23:09
當然。我投了兩個解決方案,我給這個最好的答案:) – francogrex 2010-09-12 07:32:06