# 交叉连接# 1.假设每个专业(MAJORS)都可招生源类型(STUTYPES)学生,显示专业与生源类型的所有可能组合。(知识点:笛卡尔积,交叉连接)SELECT*FROM majors,stutypes;# 内连接# 2.查询所有专业信息及其所在院部名称;# 查询所有班级信息及其所属专业名称;# 查询所有学生信息及其所在班级名称。(知识点:内连接)SELECT majors.*,departs.dname FROM majors JOIN departs ON majors.departid=departs.id;SELECT mclasss.*,majors.mname FROM mclasss JOIN majors ON mclasss.majorid=majors.id;SELECT students.*,mclasss.mname FROM students JOIN mclasss ON students.mclassid=mclasss.id;# 3.查询所有学生信息及其班级、专业名称及所在院部名称。(知识点:内连接)SELECT students.*,mclasss.mname AS mcls_name,majors.mname AS major_name,departs.dname AS dep_name
FROM students,mclasss,majors,departs
WHERE students.mclassid=mclasss.id AND mclasss.majorid=majors.id AND majors.departid=departs.id;# 4.查询所有教学楼名称,查询所有教室及其所在教学楼信息。(知识点:内连接)SELECT A.id,A.rname,B.rname '楼栋'FROM rooms A,rooms B
WHERE A.parentid=B.id;