0
我需要在查詢中有兩個聚合函數,但無法弄清楚如何過濾。查詢中的多個聚合函數
我需要的樣本數量和樣本比1
類似數量越多:
SELECT COUNT(Samples), COUNT(Samples >1)
FROM SampleData
我可以做一個子查詢,但有沒有更好的方式來過濾這個樣子?
我需要在查詢中有兩個聚合函數,但無法弄清楚如何過濾。查詢中的多個聚合函數
我需要的樣本數量和樣本比1
類似數量越多:
SELECT COUNT(Samples), COUNT(Samples >1)
FROM SampleData
我可以做一個子查詢,但有沒有更好的方式來過濾這個樣子?
你可以基本上然後Sample
的值使用CASE
和它的結果是彙總通過SUM()
。
SELECT COUNT(Samples),
SUM(CASE WHEN Samples > 1 THEN 1 ELSE 0 END)
FROM SampleData
雖然這對大多數RDBMS都有效。
要獲取記錄數,請參閱JW的答案。類似地,爲了獲得總值樣本,和樣品,其中樣品> 1,可使用的總值:
SELECT SUM(Samples) TotalSamples,
SUM(CASE WHEN Samples > 1 THEN Samples ELSE 0 END) SamplesGT1
FROM SampleData