MySQL查询最大值所在行的字段

MySQL里面有一个left()函数可以截取字符串前多少位,还有一个locate()可以计算字符的位置,再结合使用 group_concat可以取出第一段的内容,配合max()group by就可以简洁的取得最大时间排序后,这行记录中的字段。

select left('1,2,3,4', LOCATE(',','1,2,3,4')-1) ; -- 取出的字段为第一个逗号前面的内容
select max(id),left(group_concat(login_name order by id desc),locate(',',group_concat(login_name order by id desc))-1) from cdev_user;