【发布时间】:2013-11-07 03:17:47
【问题描述】:
对于需要返回在特定列上具有最大值的前 N 行的查询,我真的很困惑。
例如,如果行 N-1, N, N + 1 具有相同的值。我必须返回just top N 或top N + 1 行吗?
【问题讨论】:
-
ORDER BY .. LIMIT,不是吗?如果没有,请发布示例数据、预期输出和有效的尝试(但导致不正确的结果)查询。
-
ORDER BY 只给我前 N 个?
-
ORDER BY 只是订单。 LIMIT 提供限制。同样,一些示例数据/结果将大有帮助(并避免或逆转投票)。
-
谢谢,但我只是想问一下,我必须总是返回前 N 或者如果有一些行具有相同的值(示例),我需要全部返回。
-
Groupwise max,有一些变体;全部高效:mysql.rjweb.org/doc.php/groupwise_max