Mysql sql中的子查询,用于解决仅在2个主题中显示名称的问题

Mysql sql中的子查询,用于解决仅在2个主题中显示名称的问题,mysql,Mysql,使用sql显示恰好在2个科目中成绩低于40的所有候选人的姓名 学位(代码、姓名、科目) 候选人(座位号、编号、姓名) 标记(seatno、dedcode、mark)您的查询如下所示- SELECT cd.name FROM degree dg JOIN candidate cd ON cd.degcode=dg.degcode JOIN marks mk ON mk.seatno=cd.seatno WHERE mk.mark < 40 GROUP BY cd.seatno H

使用sql显示恰好在2个科目中成绩低于40的所有候选人的姓名

学位(代码、姓名、科目) 候选人(座位号、编号、姓名)
标记(seatno、dedcode、mark)

您的查询如下所示-

SELECT cd.name 
FROM degree dg 
JOIN candidate cd ON cd.degcode=dg.degcode 
JOIN marks mk ON mk.seatno=cd.seatno 
WHERE mk.mark < 40 
GROUP BY cd.seatno 
HAVING COUNT(dg.degcode)=2;
选择cd.name
从dg学位开始
在cd上加入候选cd.degcode=dg.degcode
连接mk.seatno=cd.seatno上的标记mk
其中mk.mark<40
按cd.seatno分组
具有计数(dg.degcode)=2;

如果它对您不起作用,那么可以创建一个带有虚拟数据的sqlfiddle,以便我可以根据您的要求修改查询。

您尝试过哪些方法?我们可以得到你尝试过但不起作用的代码吗?这是一个开始。。。研究
internaljoin
它看起来是这样的:-->
SELECT*FROM候选者degree.degcode=Ddecode.id上的internal JOIN degree
谢谢。我尝试了sql FIDLE,但它似乎无法识别“.”运算符,而且需要使用子查询的解决方案。