有这样一个表。
id name age
1 to 12
2 thow 25
3 rwo 23
4 soa 14
5 flo 20
6 tie 20
7 fm 18
8 soa 20
9 flo 16
10 tie 26
11 soa 23
12 rwo 17
问题1:按名字重排,若名字有重复的,则取年龄大的那个记录。
问题2:按名字重排,若名字重复次数相同的,则取年龄和大的那个记录。
1.select count(id) as num, name,max(age) from select_age group by name order by name
2.select sa.nums, sa.names, max(sa.ages) from(
select count(id) as nums , name as names,sum(age) as ages from select_age group by name order by ages desc ) sa
group by nums