id | name | current_city | login_time |
---|---|---|---|
8 | 用户A | 上海 | 2019-10-18 10:00:00 |
7 | 用户A | 北京 | 2019-10-18 09:00:00 |
6 | 用户B | 杭州 | 2019-10-18 08:00:00 |
5 | 用户A | 天津 | 2019-10-18 07:00:00 |
4 | 用户B | 江苏 | 2019-10-18 06:00:00 |
3 | 用户C | 郑州 | 2019-10-18 05:00:00 |
2 | 用户B | 南京 | 2019-10-18 04:00:00 |
1 | 用户C | 深圳 | 2019-10-18 03:00:00 |
mysql 数据如上所示:
如何获取每个用户最后一次出现的城市信息
结果:
id | name | current_city | login_time |
---|---|---|---|
8 | 用户A | 上海 | 2019-10-18 10:00:00 |
6 | 用户B | 杭州 | 2019-10-18 08:00:00 |
3 | 用户C | 郑州 | 2019-10-18 05:00:00 |
一开始也想到子查询了,忘记了,后来求助v站,有大神给了下面的子查询,感觉还是不错的,可以看一下
select name,current_city from table where id in
(
select max(id) from table
group by name
)