我有一个包含5个表的关系数据库
1. student (Name, StudentID)
2. favorite_colorID (StudentID, ColorID)
3. favorite_collegeID (StudentID, CollegeID)
4. color (ColorID, Color)
5. college (CollegeID, College)
我想提出一个仅打印Name, Color, and College
这可能只是一个简单的JOIN问题,但我没有做过一年的严肃查询(生锈)。
答案 0 :(得分:1)
按照表格中的外键。表学生链接到favorite_colorId和favorite_collegeID。当你根据studentId加入反对这两个人的时候,你会收到ColorId和CollegeId。一旦你拥有了这两个你可以内部加入桌子颜色和表学院。
student -> favorite_colorID -> color
student -> favorite_collegeID -> college
我不想给你sql,但现在你知道路径我相信你可以做到。
答案 1 :(得分:1)
select s.name, c.color, co.college
from student s inner join favorite_colorId fc on s.studentId = fc.studentId
inner join color c on fc.colorId = c.colorId
inner join favorite_collegeId fco on s.studentId = fco.studentId
inner join college co on fco.collegeId = co.collegeId