在我的网站上,我有一个互相关注的概念,比如twitter,我有一个用户连接表,结构如下,
==============================================================
连接到|连接者|会话ID |连接状态|记录日期
==============================================================
连接到保存您连接到的用户
连接者持有正在连接的用户
SessionID再次保留正在连接的用户
现在假设用户A连接到用户B表条目如下
===============================
B|U id | A|U id |已连接|日期
===============================
现在A跟在B后面,即使B跟在A后面
===============================
A|U id | B|U id |已连接|日期
===============================
现在我想要的是如果两者都在跟踪,我有一个叫做网络的页面,所以如果用户a和我登录,如果我进入我的网络页面,我应该看到跟踪我的人在跟踪我,但是我不能弄清楚我应该如何检测哪些用户在跟踪我…就像谷歌加我的客户,如果你跟踪一个用户,你在跟踪他,但是如果他跟踪你,而不是你是朋友..那么我应该添加1个字段,比如说字段X,在连接之前,我检查该用户是否跟踪我,我应该更新字段X中的两个记录作为朋友。
我试了很多东西,所以不要问我试了什么,我试了,试了,但还是没能表现出来
最佳答案
假设您的用户ID是@id
并且连接表名是CONNECTION
。然后,以下查询将列出所有连接回您的用户的ID:
select
me2friend.ConnectedTo
from
CONNECTION me2friend,
CONNECTION friend2me
where
me2friend.ConnectedBy = @id and
me2friend.ConnectedTo = friend2me.ConnectedBy and
friend2me.ConnectedTo = @id
关于php - 使用PHP处理关注/关注者,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/12529175/