【发布时间】:2010-12-25 07:13:41
【问题描述】:
我有这个 SQL 查询:
SELECT Foo, Bar, SUM(Values) AS Sum
FROM SomeTable
GROUP BY Foo, Bar
ORDER BY Foo DESC, Sum DESC
这会产生类似这样的输出:
47 1 100
47 0 10
47 2 10
46 0 100
46 1 10
46 2 10
44 0 2
我希望每个 Foo 仅具有第一行(它及其最高 Bar),而忽略其余部分。
47 1 100
46 0 100
44 0 2
我该怎么做?
【问题讨论】:
-
那么,您使用的是什么数据库以及该数据库的哪个版本?这是一个很好的标签候选者!
-
选择保留哪些记录和丢弃哪些记录的标准是什么?
-
@ILMV:有时我希望你能给好的编辑点数......
-
重写了问题,简化了查询。除非更新以反映更改,否则某些答案可能不再有意义。
-
这能回答你的问题吗? Select first row in each GROUP BY group?
标签: sql sql-server-ce