本文主要是介绍SQL经典50查询语句案例_12(查询至少学过学号为“1001”同学所有课程的其他同学学号和姓名),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
SQL经典50查询语句案例_12
12.查询至少学过学号为“1001”同学所有课程的其他同学学号和姓名
SELECT res.SId, student.StuName
FROM(SELECT b.SId, COUNT(*) as number FROM(SELECT SId FROM(SELECT CId FROM sc WHERE SId = '1001')a,
sc aa
WHERE a.CId = aa.CId)b GROUP BY b.SId)res,(SELECT COUNT(CId) as number FROM sc WHERE SId = '1001')c,student
WHERE res.number = c.number AND res.SId <> '1001'AND student.SId = res.SId
在MySQL命令行中的运行情况:
总结: 在不使用join的情况下的解法,思路比较复杂,运用了多嵌套查询和count计数等。
——如有问题和更简单的方法请各位大佬指出!
这篇关于SQL经典50查询语句案例_12(查询至少学过学号为“1001”同学所有课程的其他同学学号和姓名)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!