永发信息网

mysql查询max()

答案:2  悬赏:60  手机版
解决时间 2021-01-03 13:26
  • 提问者网友:临风不自傲
  • 2021-01-02 15:37
数据表tableA是这样的。
id username mark dateT
1 user1 78 2006
2 user2 45 2006
3 user1 89 2007
4 user2 78 2009

我用以下语句来查询
select id,username,max(mark),dateT from table_a group by username
出的结果并不是我想要的
id username mark dateT
1 user1 89 2006
2 user2 78 2006
问,我怎么才能得到下面的结果
id username mark dateT
3 user1 89 2007
4 user2 78 2009
最佳答案
  • 五星知识达人网友:duile
  • 2021-01-02 16:35
SELECt * FROM tableA a WHERe a.mark >= (SELECt MAX(b.mark) FROM tableA b WHERe b.username=a.username )
全部回答
  • 1楼网友:话散在刀尖上
  • 2021-01-02 16:44
select * from tableA order by mark decs limit 2; 这样子不是也可以嘛
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯