2011-03-10 86 views
0

問候, 我想建立一個查詢,將提供兩個日期之間的所有記錄(一些記錄是反覆出現的)的總數。我被困在以下查詢:sql查詢計數兩個日期之間的多行

SELECT DISTINCT Country, COUNT(Country) as Count, Date 
From DataSet 
GROUP BY Country, Date 
ORDER BY Country HAVING Date>'1/1/2000' 

在此先感謝。

回答

0
SELECT DISTINCT Country, COUNT (Country) AS COUNT 
    FROM DataSet 
    WHERE Date BETWEEN '01-01-2010' AND '01-01-2011' 
GROUP BY Country 
ORDER BY Country 

你不應該按日期組,因爲你會得到每一個日期排

0
SELECT Country, COUNT(DISTINCT Country) as "Count" 
FROM DataSet GROUP BY Country, Date 
HAVING Date>'1/1/2000'; 

因爲HAVING沒有被確定與順序設置coorect它

+0

你只需要使用HAVING子句,如果您正在過濾聚合(SUM,COUNT)。因此,如果您想要Count大於10的所有記錄,您可以使用HAVING COUNT(*)> 10.如果您只是過濾一個值,它應該在WHERE子句中。 – Leslie 2011-03-10 16:14:50

相關問題