首先解决此种需求的查询要根据自己的业务或者需求,如果要是业务处理的话就简单多了。还有一个是mysql,一个是ORACL两种数据库,sqlserver我到没有研究,应该也有。笨方法多多包涵
MYSQL的是这个样子的应该有更简单的方法我就不多想了。
一:查询五个人的不同课程
SELECT * from (
SELECT c.course_name,s.score,sa.student_name FROM course AS c
LEFT JOIN score AS s ON c.course_id=s.course_id
LEFT JOIN student AS sa ON s.student_id=sa.student_id
WHERE c.course_name='语文' ORDER BY s.score DESC LIMIT 0,5) AS t
UNION ALL
SELECT * from (
SELECT c.course_name,s.score,sa.student_name FROM course AS c
LEFT JOIN score AS s ON c.course_id=s.course_id
LEFT JOIN student AS sa ON s.student_id=sa.student_id
WHERE c.course_name='数学' ORDER BY s.score DESC LIMIT 0,5) AS t
UNION ALL
SELECT * from (
SELECT c.course_name,s.score,sa.student_name FROM course AS c
LEFT JOIN score A