2012-08-24 186 views
0

我必須使用GROUP BY語句從SQL Server CE中提取數據。SQL Server CE GROUP BY子句

現在我越來越

在聚合和分組表達式中,SELECT子句可以包含 只有聚集和分組表達式。 [Select clause =,Date]

但我真的很想要約會。

查詢如下

SELECT Date 
FROM Installments 
GROUP BY ID 
HAVING Sr = max(Sr) 

我在做什麼錯?請解釋

+0

可能值得解釋一下您希望查詢以英文而非SQL進行。我可以想出幾種方法來「解決」這個問題,以便給出答案,但他們每個人都有不同的答案,我不知道你想要的是什麼。 –

+0

@Jon Hanna你可以加入我的聊天室,我可以向你解釋模式和我想要得到的結果 – user1375948

+0

好吧,如果ElVieejo已經找到了你需要的答案,那麼沒有意義。歡呼! :) –

回答

0

當您使用GROUP BY,你組的一些領域,並應用聚合函數。 因此,在選擇時,您應該將該字段(分組結果)以及所用函數的結果。

也許你想要的東西,像

SELECT Id, Max(date) FROM Installments GROUP BY ID 

它將取決於你想要什麼。

閱讀關於Group by here

0

如果您是按ID分組,則每個組可能有多個不同的日期,因此您不能選擇日期。你可以,例如,

select Max(Date) FROM Installments GROUP BY ID 
0

正如它所說的,你需要包含你在group by子句中返回的列。

SELECT Date FROM Installments GROUP BY ID, Date 

我懷疑你可能會試圖做的是

SELECT Date 
FROM Installments 
WHERE sr = (Select MAX(sr) from Installments) 
+0

但現在它說相同的HAVING CALUSE說:「在聚合和分組表達式中,HAVING子句只能包含聚合和分組表達式。[Select clause = Sr]」 – user1375948