要求:获得按table1_id分组,并且age最大的记录信息,即2、3、5条
方法一:
select * from (select * from table2 order by age desc) as a group by a.table1_id
方法二:
select a.* from table2 as a where age = (select max(age) from table2 where a.table1_id=table1_id)
方法三:
select a.* from table2 as a where not exists (select * from table2 where table1_id=a.table1_id and age>a.age)
方法四:
select a.* from table2 as a where exists (select count(*) from table2 where table1_id=a.table1_id and age>a.age having count(*)=0)
SQL查询技巧
本文介绍了四种不同的SQL查询方法来获取特定条件下年龄最大的记录信息,这些方法包括使用子查询、比较排除法等,为开发者提供了多种实现思路。
3001





