我正在使用Oracle數據庫。oracle sql count(或其他足夠的聚合)在行不存在時返回零
我有一張桌子:汽車。
它有三個字段
賽 - 汽車 - 完成
車子基本上是ID字段。比賽是比賽的名字。完成是汽車放置的地方:(第1,第2,第4,DNF)。
我想返回某個汽車在每個位置完成多少次,包括零實例。所以,最終的結果將是:
Toyota
Finish Amount
1st 3
2nd 0
3rd 2
DNF 0
我試過NVL返回零當汽車沒有獲得第二名: 選擇完成,算上從汽車(NVL(完成)) 其中汽車= 「豐田」; 但這仍然只返回第一名和第三名完成計數。
我幾乎是一個SQL初學者,所以我一直在閱讀所有在本網站和其他地方可以找到的零計數問題,並且無法將建議推廣到我的特定情況。
編輯爲包括表: 我包括澄清表。 「競賽」欄目對於這項任務並不重要,因爲我只是在計算「完成」職位。
CAR RACE FINISH
Toyota DCA 1st
Toyota NYC 3rd
Toyota ATL 3rd
Toyota PHI 1st
工作,我敢肯定這可以用oracle分析函數完成,但不知道細節。 – OldProgrammer 2013-03-10 16:42:49