我想使用group by从我的FileList中选择所有不同的文件。但是我想只返回ID最高的元素。我只收到第一个条目。 如何解决这个问题?
select * from files group by name;
这是我的表内容...
ID NAME DATE USER
1443 - /test.txt - 24 May 2013 12:56:15 - XX
1444 - /test.txt - 24 May 2013 12:54:41 - XX
1445 - /test.txt - 24 May 2013 12:53:38 - AB
1446 - /test.txt - 24 May 2013 12:44:32 - XX
1983 - /asdf.txt - 24 May 2013 13:46:32 - KS
答案 0 :(得分:0)
select * from files
where id in
(
select max(id)
from files
group by name
)
或
select f.*
from files f
inner join
(
select max(id) as id
from files
group by name
) x on x.id = f.id
答案 1 :(得分:-1)
使用: -
select *,max(id) from files group by name;