2012-11-21 37 views
0

我有這個表訪問,我試圖做一個計數和一個組,但是我得到一個錯誤。分組和按訪問計數

enter image description here

我試圖做的來源是一羣我試着汽車具有交流和之前2008年

由數量這樣的:

SELECT SOURCE_ID, COUNT (SOURCE_ID) AS VEHICLES_WITH_AC 
FROM VEHICLE 
WHERE VEH_AC = 'Y' 
GROUP BY SOURCE_ID, VEH_AC, VEH_YEAR 
HAVING VEH_YEAR <'2008'; 

但即時獲得:enter image description here

回答

1
SELECT SOURCE_ID, COUNT (*) AS VEHICLES_WITH_AC 
FROM VEHICLE 
WHERE VEH_AC = 'Y' AND VEH_YEAR < '2008' 
GROUP BY SOURCE_ID; 

1)你顯然需要由SOURCE_ID,沒有別的總數,所以你通過別的不羣。 2)你在VEH_YEAR上的條件應該在where子句中,否則所有veh_year行將在聚合後被選中並丟棄。

+0

是的,這似乎是最簡單的答案,而不必強制在那裏有條款。謝謝。在旁註中,我想知道如何通過VEHICLES_WITH_AC訂購?我不知道該怎麼稱呼這個臨時專欄,因此google解決方案給我帶來了問題。 例如,我有一個查詢,它向我顯示員工銷售額最少的員工,但我希望結果是遞減的。 – Batman

+1

@Batman。您可以使用列序號進行排序:ORDER BY 2 DESC將按第二列按降序排序。 –

1

嘗試刪除;WHERE條款。 reference

+0

謝謝,我發現有點早,但是不能解決問題。 – Batman

+0

也許替換截圖? –

+0

我添加了一個新的顯示什麼即時嘗試和即時通訊。當我說group_by source_id時,SOURCE_ID應該是不同的。但是,它顯示了兩次(102) – Batman