mysql语句如何一行显示求助
有一个需求,根据is_come和section字段,按teacher和room分组选取出第1节、第2节课来和没来的学生,要求用一行显示,如图:
测试用的表结构和数据:
CREATE TABLE `come` ( `id` int(11) NOT NULL AUTO_INCREMENT, `teacher` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL, `room` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL, `student` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL, `is_come` int(255) NULL DEFAULT NULL COMMENT '0缺席,1出席', `section` int(255) NULL DEFAULT NULL COMMENT '节数,只有1和2,即代表第一节或第二节', PRIMARY KEY (`id`) USING BTREE ) ENGINE = InnoDB AUTO_INCREMENT = 6 CHARACTER SET = utf8 COLLATE = utf8_general_ci ROW_FORMAT = Dynamic; INSERT INTO `come` VALUES (1, '老师A', '101', '学生x', 1, 1); INSERT INTO `come` VALUES (2, '老师A', '101', '学生y', 0, 1); INSERT INTO `come` VALUES (3, '老师A', '101', '学生z', 0, 1); INSERT INTO `come` VALUES (4, '老师A', '101', '学生x', 0, 2); INSERT INTO `come` VALUES (5, '老师B', '202', '学生n', 0, 1);