gpt4 book ai didi

sql - 通过一个 mysql 查询获得 5 级关系

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

非常感谢您事先的回答。我需要做这样的事情

我有一个表friendship(id,user_id,friend_id,status,timestamp)

假设我是一个 user_id=43 的用户,我正在访问一个 user_id=15 的用户

在个人资料中应该是友谊的连接线

让我描述一下......假设我与用户有友谊(user_id=3 并且 user_id=3 的用户是我正在访问的用户的 friend 。

所以我会在网站上看到

连接

MyIcon->UserIcon(15)->UserIcon(3)->UserIcon(我正在访问)

只有在所有人的友谊状态都为 status=1 的情况下...

谁能告诉我查询应该是什么样子的?

最佳答案

对于普通的 MySQL,没有本地方法可以做到这一点。您必须决定要查看的深度,并使用该数量的 JOIN 操作来查看是否可以从一个用户 ID“到达”另一个用户 ID,或者您可以给社区贡献的图形引擎一个旋转:

http://openquery.com/products/graph-engine

(这涉及到使用非官方二进制 AFAIK,也许它已经可以作为插件使用,但我不确定)

使用该引擎,您可以在一个简单的查询中完成:

SELECT * FROM foo WHERE latch = 1 AND origid = 15 AND destid = 43;

然后这将为从用户 15 到用户 43 必须经过的每个链接返回一行。您将使用应用程序代码来很好地显示它。

关于sql - 通过一个 mysql 查询获得 5 级关系,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2006841/

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