我有几张类似的桌子。我需要通过*.
我想获取每个行中revnr最高的行的列表docid。
我的问题是我不知道如何max(revnr)为每个docid.
我正在使用 MySQL,但我更喜欢通用的 sql 解决方案。
谢谢!
我有几张类似的桌子。我需要通过*.
我想获取每个行中revnr最高的行的列表docid。
我的问题是我不知道如何max(revnr)为每个docid.
我正在使用 MySQL,但我更喜欢通用的 sql 解决方案。
谢谢!
revnr您可以在子查询中获取每个的最新值,docID然后该结果将连接到表本身。
SELECT a.*
FROM tableName a
INNER JOIN
(
SELECT docID, MAX(revnr) max_val
FROM tableName
GROUP BY docID
) b ON a.docID = b.docID AND
a.revnr = b.max_val
为了获得更好的性能,请INDEX在两列上添加:docID和revnr
ALTER TABLE tableName ADD INDEX (docID, revnr);