有表school如下:
CREATE TABLE school (
class INT(11),
name VARCHAR(20),
status INT(11)
);
插入测试数据
INSERT INTO school VALUES(1, 'Tim', 2);
INSERT INTO school VALUES(1, 'Jack', 3);
INSERT INTO school VALUES(2, 'Lucy', 1);
INSERT INTO school VALUES(2, 'Tom', 3);
INSERT INTO school VALUES(2, 'Lily', 2);
需按class分组,并获取每班status最大的那条记录,最终得到
class name status
1 Jack 3
2 Tom 3
求解,谢谢
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号
用子查询:
SELECT * FROM (SELECT class,name,status from school ORDER BY status DESC) as result GROUP BY result.class