【发布时间】:2015-02-26 23:06:14
【问题描述】:
这是我的桌子:
老师:
学生:
测试
老师有学生,学生有考试。
SELECT
t.name as teacherName,
s.name as studentName,
t.id as teacherID,
s.id as studentID,
MIN(tt.grade) as grade
FROM teacher t
JOIN student s ON s.`teacher_id` = t.id
JOIN test tt ON tt.student_id = s.id
GROUP BY studentID;
所以在这里我得到老师 -> 学生 -> 最低年级(6 行)
我想要的是
老师 -> 成绩最低的学生 -> 成绩(2 行)
我可以得到
老师 -> 每个老师的最低成绩
但后来学生姓名变得模棱两可,因为我没有按那个分组..
【问题讨论】:
-
还在苦苦挣扎?如果您愿意,请考虑遵循这个简单的两步操作: 1. 如果您还没有这样做,请提供适当的 DDL(和/或 sqlfiddle),以便我们可以更轻松地复制问题。 2. 如果您尚未这样做,请提供与步骤 1 中提供的信息相对应的所需结果集。
-
我在 xml、原始 sql 等中进行了续集转储。sqlfiddle 只是说:发生未知错误:XML 文档结构必须在同一实体内开始和结束。:
标签: mysql sql group-by subquery aggregate