gpt4 book ai didi

mysql - 查找参加完全相同类(class) SQL 的学生列表

转载 作者:太空宇宙 更新时间:2023-11-03 11:30:51 25 4
gpt4 key购买 nike

我见过很多这样的问题,但是在查看了这里的其他问题后仍然不明白该怎么做。

Select s1.email
From student s, student s1
where s1.sname <> 'Alice'
and not exists (select 1
from enrol e, course c, enrol e1
where s.sname = 'Alice'
and s.sid = e.sid
and s1.sid = e1.sid
and e1.code <> e.code );

请引用:http://sqlfiddle.com/#!9/aaaf58/5

这是我的示例数据库,添加了一些虚拟值以便我可以测试此 SQL 查询。

  • 我正在尝试做的是找到与这个名为 alice 的特定学生选修了完全相同类(class)的学生列表。

  • 我见过的许多 SQL 查询都不存在。所以我试图实现它但失败了。我应该得到 b@hotmail 而不是 b@hotmail 和 c@hotmail。 (因为只有 bob 选了和 alice 完全一样的类(class))

提前致谢。

最佳答案

尝试下面的查询

SELECT *
FROM
(
SELECT s.sid,s.email,GROUP_CONCAT(e.code ORDER BY code) course_list
FROM student s
JOIN enrol e ON e.sid=s.sid
WHERE s.sname<>'Alice'
GROUP BY s.sid,s.email
) q
WHERE course_list=(
SELECT GROUP_CONCAT(e.code ORDER BY code) course_list
FROM enrol e
JOIN student s ON e.sid=s.sid
WHERE s.sname='Alice'
)

关于mysql - 查找参加完全相同类(class) SQL 的学生列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50035151/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com