gpt4 book ai didi

mysql - 在 MySQL 的同一个查询中使用同一个子查询 2 次

转载 作者:行者123 更新时间:2023-11-29 02:57:25 25 4
gpt4 key购买 nike

我有一张代表友谊的表格,如下所示

+--------+--------+
| user_1 | user_2 |
+--------+--------+
| 1 | 5 |
| 2 | 67 |
| 3 | 23 |
| ... | ... |
+--------+--------+

我想创建一个程序来检索 friend 的 friend (但直接 friend 不能包含在结果中)。我通过执行以下操作实现了这一点:(假设我们想要用户 5 的 friend 的 friend )

SELECT user_2
FROM friends
WHERE user_1 IN (
SELECT user_2
FROM friends
WHERE user_1=5
) AND user_2 NOT IN (
SELECT user_2
FROM friends
WHERE user_1=5
)

但是重复让我很烦。我怎样才能在没有冗余的情况下做同样的事情?

我知道答案很简单,但我无法确定。我尝试使用别名但没有成功。谢谢!

最佳答案

类似的东西对我有用:

SELECT user_2
FROM friends,
(SELECT user_2 FROM friends WHERE user_1=5) USER2Alias
WHERE user_1 IN (USER2Alias.user_2) AND user_2 NOT IN (USER2Alias.user_2)

关于mysql - 在 MySQL 的同一个查询中使用同一个子查询 2 次,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28997987/

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