ljc1313
2019-03-17 16:09
采纳率: 100%
浏览 1.3k

数据库 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会报错
我在想怎么写好,有大神支个招吗?

  • 写回答
  • 好问题 提建议
  • 追加酬金
  • 关注问题
  • 收藏
  • 邀请回答

2条回答 默认 最新

  • 小小菜鸟2020 2019-03-17 17:29
    已采纳

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

    评论
    解决 无用
    打赏 举报
查看更多回答(1条)

相关推荐 更多相似问题