0

我有 2 个表“用户”和“朋友”:

Table: Users(username,email,location,online_status)
Table: Friends(Friend_rq_from,Friend_request_to,status)

“用户”表用于显示网站中的注册用户数

和“朋友”表供个人用户维护他们的朋友。

我想数一下,例如:mithun's 来自“Friends”表的朋友(1 表示他们是 Friends 表中的朋友)在 Users 表中在线..(1 表示在“users”表中在线)

这对我来说有点困难,因为“朋​​友”表有 2 个字段,“mithun”可以在“Friend_rq_from”字段或“Friend_request_to”字段中......如何找到这个?

NB: Friend_rq_from: 表明谁发起了好友请求,Friend_request_to: 表明请求发送给谁(或者谁正在等待接受)

4

1 回答 1

0
SELECT COUNT(distinct u.username)
FROM Users u
INNER JOIN Friends f
ON (u.username = f.Friend_rq_from AND f.Friend_rq_to='mithun' AND f.status=1)
OR (u.username = f.Friend_rq_to AND f.Friend_rq_from='mithun' AND f.status=1)
WHERE u.online_status = 1 AND u.username <> 'mithun'
于 2013-03-21T21:15:34.080 回答