2013-05-21 29 views
0

多個具有相同數據值的購買的,我有以下表計數在Oracle

我如何寫SQL語句來找出有多少採購一直存在於其中至少有1000個購買與相同的ServiceType,PaymentType和GST值?

我知道我需要使用count集合,我想查詢應該這樣開始

感謝

回答

3

我認爲你需要計算的,而不是總和。或者,如果您需要總金額,請總結金額。

SELECT COUNT(PurchaseNo) 
FROM PURCHASE 
GROUP BY ServiceType, PaymentType, GST 
HAVING COUNT(PurchaseNo) >= 1000 
+0

爲什麼'GROUP BY ServiceType,PaymentType,PaymentType'中的'PaymentType'是雙重的? –

+0

謝謝你,我有點尷尬,我認爲這比實際情況困難得多!將很快接受 – Jim

+0

@priti thx指出,只是一個複製錯誤應該是GST –

3
select count(*) 
from PURCHASE 
group by ServiceType, PaymentType, GST 
having count(*) >= 1000 
+0

我覺得這不順心,因爲它不知道在having子句中CNT?不確定。 –

+0

+1但是@NLwino是正確的:Oracle不喜歡'having'子句中的別名。如果你把它改成'count(*)> = 1000',它可以正常工作。 –

+0

@NLwino,Ed Gibbs,謝謝,查詢更新 –

0

你可以這樣做:

select COUNT(*),ServiceType, PaymentType, GST 
FROM PURCHASE 
having count(*) > 1000 
group by ServiceType, PaymentType, GST; 
+0

只需要購買,但謝謝你,仍然慢跑我的記憶,不能相信我沒有想到它! – Jim