数据库 mysql查询在以name做了group by并且用了max的结果中如何再选择到id

情况是这样的,我有一个数据库,表结构大致长这样:
table A:
id unique,
name ,
repeat ,
score1,
score2 ,
score3
我现在先:
select name,ms1
from (select name,max(score1) ms1
from A
group by name)

然后我又想知道每组结果中除了score1外其他的值,而这些值也要是属于每组中
取到score1最大的那行的值
如果这样写
select T.name,ms1,score2,score3
from A,(select id,name,max(score1) ms1
from A
group by name) as T
where A.id=T.id
sql会报错
我在想怎么写好,有大神支个招吗?

需求应该是获取最大score1 的其他值,可以参考https://blog.csdn.net/jianlong727/article/details/53821088

select * from A  a where  not exists (select 1 from A  b where a.name=b.name and  a.score1<b.score1);