可能重复:
How do you select only the maximum version of a list of documents that have different versions in SQL?如何从SQL文档的列表中选择文档的最大版本?
我有一个表中存储的文件的版本和网页中的文件与
CREATE TABLE tbl (id int, title varchar(32), version int, pageid int);
insert into tbl values (1, 'file1', 1, 25);
insert into tbl values (2, 'file2', 1, 25);
insert into tbl values (3, 'file1', 2, 25);
insert into tbl values (4, 'file2', 2, 25);
insert into tbl values (5, 'file3', 1, 25);
insert into tbl values (6, 'file1', 1, 24);
insert into tbl values (7, 'file2', 1, 24);
insert into tbl values (8, 'file1', 2, 24);
insert into tbl values (9, 'file2', 2, 24);
insert into tbl values (10, 'file3', 1, 24);
我想生成相关只返回附加到pageid = 25而不是pageid = 24的文档的最大版本的查询。运行查询应该只产生行3,4,5而不是行8,9,10(因为它们与pageid = 24相关联)。
我已经为这个问题放在一起SQL Fiddle。
不完全重复,但相似。我忘记提到更多使上一篇文章中的查询更加复杂的细节,但是正确回答上一篇文章的人却无论如何都有分。 – user1068636