0

我必须使用GROUP BY语句从 SQL Server CE 中提取数据。

现在我得到

在聚合和分组表达式中,SELECT 子句只能包含聚合和分组表达式。[选择子句=,日期]

但我真的很想约会。

查询如下

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

我究竟做错了什么?请解释

4

3 回答 3

0

如果您按 ID 分组,则每个组可能有多个不同的日期,因此您不能选择日期。例如,您可以

select Max(Date) FROM Installments GROUP BY ID 
于 2012-08-24T11:40:50.817 回答
0

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

SELECT Date FROM Installments GROUP BY ID, Date 

我怀疑你可能想要做的是这个

SELECT Date
FROM Installments
WHERE sr = (Select MAX(sr) from Installments)
于 2012-08-24T11:41:21.020 回答
0

当您使用分组依据时,您按某个字段分组,并应用聚合函数。因此,在选择中,您应该先输入该字段(分组结果),然后再输入使用的函数的结果。

也许你想要类似的东西

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

这取决于你想要什么。

在此处阅读有关Group by 的信息

于 2012-08-24T11:41:57.770 回答