
1 查询所有学生的选课情况,包含学号、姓名、性别、课程号、课程名;
∏Sno,Sname,Ssex,Cno,Cname(S⟕Sc⋈C)\prod _{Sno,Sname,Ssex,Cno,Cname}(S⟕Sc⋈C)∏Sno,Sname,Ssex,Cno,Cname(S⟕Sc⋈C)
2 查询所有课程的选修情况,包含课程号、课程名、学号、姓名、性别;
∏Cno,Cname,Sno,Sname,Ssex(S⋈Sc⟖C)\prod _{Cno,Cname,Sno,Sname,Ssex}(S⋈Sc⟖C)∏Cno,Cname,Sno,Sname,Ssex(S⋈Sc⟖C)
3 查询所有学生选课及课程被选修的情况;
∏Sno,Sname,Ssex,Cname,Cno(S⟗Sc⟗C)\prod _{Sno,Sname,Ssex,Cname,Cno}(S⟗Sc⟗C)∏Sno,Sname,Ssex,Cname,Cno(S⟗Sc⟗C)
4 查询选修了所有课程的学生学号、姓名、性别;
∏Sno,Sname,Ssex((∏Sno,Cno(Sc)÷∏Cno(C))⋈S)\prod _{Sno,Sname,Ssex}((\prod _{Sno,Cno}(Sc) \div \prod _{Cno}(C))⋈S)∏Sno,Sname,Ssex((∏Sno,Cno(Sc)÷∏Cno(C))⋈S)
5 查询被所有学生选修的课程号、课程名;
∏Cno,Cname((∏Cno,Sno(Sc)÷∏Sno(S))⋈C)\prod _{Cno,Cname}((\prod _{Cno,Sno}(Sc) \div \prod _{Sno}(S))⋈C)∏Cno,Cname((∏Cno,Sno(Sc)÷∏Sno(S))⋈C)
6 查询选修了“王敏”同学所选修的所有课程的学生学号、姓名、性别;
∏Sno,Sname,Ssex((∏Sno,Cno(Sc)÷∏Cno(σSname=′王敏′(S)⋈Sc))⋈S)\prod _{Sno,Sname,Ssex}((\prod _{Sno,Cno}(Sc) \div \prod _{Cno}(σ_{Sname='王敏'}(S)⋈Sc))⋈S)∏Sno,Sname,Ssex((∏Sno,Cno(Sc)÷∏Cno(σSname=′王敏′(S)⋈Sc))⋈S)
7 查询“王敏”同学选修课程的总学分、课程数量、平均成绩;
SnoGsumCcredit,countCno,avgGrade(σSname=′王敏′(S)⋈Sc⋈S)_{Sno}G{sum_{Ccredit,}count_{Cno},avg_{Grade}}(σ_{Sname='王敏'(S)⋈Sc⋈S})SnoGsumCcredit,countCno,avgGrade(σSname=′王敏′(S)⋈Sc⋈S)
8 查询“王敏”同学选修课程的课程数量;
countcno(σSname=′王敏′(S)⋈Sc)count_{cno}(σ_{Sname='王敏'}(S)⋈Sc)countcno(σSname=′王敏′(S)⋈Sc)
9 查询“王敏”同学选修课程的平均成绩;
avgGrade(σSname=′王敏′(S)⋈Sc)avg_{Grade}(σ_{Sname='王敏'}(S)⋈Sc)avgGrade(σSname=′王敏′(S)⋈Sc)
10 查询每位同学选修课程的总学分、课程数量、平均成绩。
SnoGsumCcredit,countCno,avgGrade(S⟕Sc⋈C)_{Sno}G{sum_{Ccredit,}count_{Cno},avg_{Grade}}(S⟕Sc⋈C)SnoGsumCcredit,countCno,avgGrade(S⟕Sc⋈C)
本文深入探讨了使用SQL进行复杂查询的方法,包括联接操作、选择条件、分组与聚合等,通过具体示例展示了如何获取学生选课详情、课程选修情况、学生选课分析及成绩统计,适合数据库管理和数据分析师阅读。
1万+

被折叠的 条评论
为什么被折叠?



