正在回答 回答被采纳积分+1
1回答
时间,
2022-05-25 19:28:42
同学,你好!同学可以参考下述sql语句:
先根据sno分组,将每个学生的cno和cname值放到一个新的字段中,使用not FIND_IN_SET() 查找newcno字段中不包含a02的数据,再和student表做关联
1 2 3 4 5 6 7 8 | select * from student as s2 join ( select s.sno,GROUP_CONCAT( DISTINCT c.cno) as newcno,GROUP_CONCAT( DISTINCT c.cname) as newcname from course as c join sc as s on c.cno=s.cno group by s.sno having not FIND_IN_SET( 'a02' ,newcno)) s3 on s2.sno = s3.sno |
表中只用了部分数据
运行结果:
祝学习愉快!
Python全能工程师
- 参与学习 人
- 提交作业 16284 份
- 解答问题 4470 个
全新版本覆盖5大热门就业方向:Web全栈、爬虫、数据分析、软件测试、人工智能,零基础进击Python全能型工程师,从大厂挑人到我挑大厂,诱人薪资在前方!
了解课程
恭喜解决一个难题,获得1积分~
来为老师/同学的回答评分吧