我有几张类似的桌子。我需要通过*
.
我想获取每个行中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);