select a.* from tt a inner join (select id,max(f1) as ma from tt group by id) b on a.id=b.id and a.f1=b.ma
到底是什么?如果需要最大的,则可以 select * from 一个表 order by 字段 desc limit 1;
http://dev.mysql.com/doc/refman/5.1/zh/tutorial.html#examples3.6.1. 列的最大值 SELECT MAX(article),MIN(article) FROM shop;3.6.2. 拥有某个列的最大值的行 任务:找出最贵物品的编号、销售商和价格。 这很容易用一个子查询做到: SELECT article, dealer, price FROM shop WHERE price=(SELECT MAX(price) FROM shop);另一个解决方案是按价格降序排序所有行并用MySQL特定LIMIT子句只得到第一行: SELECT article, dealer, price FROM shop ORDER BY price DESCLIMIT 1; 注:如果有多项最贵的物品( 例如每个的价格为19.95),LIMIT解决方案仅仅显示其中一个!
inner join
(select id,max(f1) as ma from tt group by id) b
on a.id=b.id and a.f1=b.ma
select * from 一个表 order by 字段 desc limit 1;
SELECT MAX(article),MIN(article) FROM shop;3.6.2. 拥有某个列的最大值的行
任务:找出最贵物品的编号、销售商和价格。
这很容易用一个子查询做到:
SELECT article, dealer, price FROM shop WHERE price=(SELECT MAX(price) FROM shop);另一个解决方案是按价格降序排序所有行并用MySQL特定LIMIT子句只得到第一行:
SELECT article, dealer, price FROM shop ORDER BY price DESCLIMIT 1;
注:如果有多项最贵的物品( 例如每个的价格为19.95),LIMIT解决方案仅仅显示其中一个!