我需要 SQL 查询方面的帮助。
我有两张 table 。一种是用户,另一种是用户 friend
users table:
aid email firstname
1 example@mail.com example
2 example2@mail.com example2
3 example3@mail.com example3
4 example4@mail.com example4
userfriends tables:
reqid email friendemail status
1 example1@mail.com example2@mail.com 1 (example1 is frnds with example2)
2 example2@mail.com example4@mail.com 2 (example2 request pending)
3 example3@mail.com example1@mail.com 1 (example1 is frnds with example3)
4 example4@mail.com example1@mail.com 1 (example1 is frnds with example4)
因此,当状态为 2 时,添加请求处于待处理状态,而当状态为 1 时,他们是好友。我想要的是我想检索用户 example1 的完整好友列表。我想从用户表中提取名称,以获取先前查询的相应输出以显示为好友列表。
最佳答案
我认为你们忽略了这样一个事实:搜索的电子邮件可能位于任一列中:
select u.firstname
from userfriends f, users u where
u.email='email@domain.com' and f.status=1 and
(u.email = f.email and f.friendsemail='email@domain.com')
or
(u.email = f.friendsemail and f.email='email@domain.com')
关于php - 用于获取好友列表的 SQL 查询,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13040594/