-2

我想使用 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
4

2 回答 2

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

SQLFiddle 演示

于 2013-05-24T17:21:25.870 回答
-1

用这个:-

select *,max(id) from files group by name;
于 2013-05-24T17:22:24.183 回答