gpt4 book ai didi

mysql - 寻找 friend 的 friend (不包括 friend )的最有效方法

转载 作者:行者123 更新时间:2023-11-30 00:49:51 26 4
gpt4 key购买 nike

假设我有一个名为“ friend ”的表,对于每个友谊,我添加两个条目。例如,如果用户 1 和 2 是 friend ,我们将有:

uid1 uid2
----------
1 2
2 1

我的目标是找到 friend 的 friend ,不包括 friend 。以下查询给出了我 friend 的 friend (包括 friend ):

SELECT f2.uid2 FROM friends f1, friends f2 WHERE f1.uid1='YOUR_ID' AND f1.uid2=f2.uid1 AND f2.uid2!='YOUR_ID'

我的偏好是不使用 IN 或 NOT IN。你能想到什么来补充这个查询吗?

最佳答案

添加与您自己的 friend 的外部联接,以便您可以将他们过滤掉。

SELECT f2.uid2 FROM friends f1
JOIN friends f2 ON f1.uid2 = f2.uid1
LEFT JOIN friends f3 ON f3.uid2 = f2.uid2 AND f3.uid1 = 'YourID'
WHERE f1.uid1='YourID'
AND f2.uid2!='YourID'
AND f3.uid2 IS NULL

SQLFIDDLE

关于mysql - 寻找 friend 的 friend (不包括 friend )的最有效方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21070914/

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