【发布时间】:2015-01-07 08:01:01
【问题描述】:
我正在查询包含日期和数字的表。我需要按 desc 顺序排列的前 10 个日期和平均列的值。
SELECT TOP (10) columnName1, AVG(columnNumber1) AS AvgNumber
WHERE ....
AND ...
GROUP BY columnName1
**Order by date desc**
要获得最重要的重新发送日期,我需要按日期顺序排序
rgs
我需要对日期列进行排序,然后平均前十名。使用 group by 我必须在 select 中放置日期并获得 10 个结果...我不想按日期分组。这可能不是这种方式
例如 HireDate LocationID
2001-01-01 1
2002-08-12 1
1999-09-01 2
1996-03-16 1
2007-05-17 1
2001-11-15 4
2000-01-01 1
2001-11-15 空
2003-09-30 2
2004-10-04 2
1989-04-01 1
1995-05-26 4
从 Employee 中选择前 (5) 个 avg(locationid) 按 HireDate 顺序排序
消息 8127,第 16 层,状态 1,第 2 行 ORDER BY 子句中的“Employee.HireDate”列无效,因为它既不包含在聚合函数中,也不包含在 GROUP BY 子句中。
需要结果
雇用日期位置 ID 2007-05-17 1
2004-10-04 2
2003-09-30 2
2002-08-12 1
2001-11-15 4
平均 =2
【问题讨论】:
-
您的问题是什么?阅读您所缺少的内容并不清楚。您指出您需要前 10 个日期和平均值,您的查询似乎可以为您提供。你还想知道什么?
-
我需要对日期列进行排序,然后平均前十名。使用 group by 我必须在 select 中放置日期并获得 10 个结果...我不想按日期分组。这可能不是这种方式
-
如果您包含一些示例输入和预期输出,这将使您的问题更清楚。