既然以name分组了,那score只能以分组的来了,一个name对应一个score 要不就 select score from students group by name,score; 以name+score共同分组.
select s.* from students s where not exists(select 1 from students where name=s.name and score>s.score)select s.* from students s,(select name,max(score) as score from students group by name) v where s.name=b.name and s.score=v.score
select ... from (select t.*, row_number() over(patition by name order by score desc) rrr from t ...) where rrr=1;
要不就
select score from students group by name,score;
以name+score共同分组.
from (select t.*, row_number() over(patition by name order by score desc) rrr from t ...)
where rrr=1;