gpt4 book ai didi

mysql - 计数后的 SQL 查询公共(public)值

转载 作者:搜寻专家 更新时间:2023-10-30 20:37:31 24 4
gpt4 key购买 nike

我想知道如何解决这个问题,我有这两个表:

TABLE FRIENDSHIP
Name | Friend
--------------
John | Mark
Peter | Paul
Simon | Mary

TABLE SCHOOL
Name | School
--------------
John | SchoolA
Mark | SchoolA
Peter | SchoolB
Paul | SchoolC
Simon | SchoolC
Mary | SchoolD

如何选择那些是 friend 但不在同一所学校上学的人?我想首先选择计数小于 2 的学校,然后将这些人的名字与 FRIENDSHIP 表中的名字进行比较(比较列名称和 friend )。我如何将其转换为查询?对不起,我是新手..

它应该返回如下内容:

Name | Friend
---------------
Peter | Paul
Simon | Mary

感谢帮助

最佳答案

您可以尝试将 SCHOOL 表连接到 FRIENDSHIP 表两次,一对中的每个 friend 一次。然后,您可以通过仅保留各自学校相同的 friend 对来限制您的结果集。

SELECT f.Name, f.Friend
FROM FRIENDSHIP f INNER JOIN SCHOOL s1 ON f.Name = s1.Name
INNER JOIN SCHOOL s2 ON f.Friend = s2.Name
WHERE s1.School <> s2.School

这是使用您的示例数据的此查询的工作演示:

SQLFiddle

关于mysql - 计数后的 SQL 查询公共(public)值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33664664/

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