我有一个数据库表,如下所示:
id version_id field1 field2
1 1 texta text1
1 2 textb text2
2 1 textc text3
2 2 textd text4
2 3 texte text5
如果您没有计算出来,它包含一行的多个版本,然后是一些文本数据。
我想要查询它并返回每个id的最高编号的版本。(所以只有上面的第二行和最后一行)。
我试过在使用group by的同时按version_id DESC排序--但它似乎是在分组后排序的,所以这不起作用。
有人有什么想法吗?我不敢相信这件事做不到!
更新:
想一想,这是可行的,但使用子查询:
SELECT *
FROM (SELECT * FROM table ORDER BY version_id DESC) t1
GROUP BY t1.id
https://stackoverflow.com/questions/537223
复制相似问题