1
我有一個表accounts
(id,full_name)和account_friends
(account_id,friend_id)。 friend_id基本上是另一個用戶的帳戶ID。我如何找到賬號id = 1的所有賬號尚未建立友誼?查找與用戶尚未交友的帳戶
回覆@OMG Ponies。
基本上,我明白這將需要多個連接。我的邏輯是這樣的:
SELECT
a2.id
FROM
accounts a1
/* left/right join a1 with account_friends */
INNER JOIN
accounts a2
ON
af1.friend_id = a2.id
WHERE
a1.id;
雖然我不明白,左/右連接位應該做的伎倆找到不-朋友條目。
但如果1是朋友2,是有可能,我們最終得到的(ACCOUNT_ID = 2,friend_id = 1),而不是( 1,2)? –
@ant好的一點,我認爲友誼對每個用戶來說都是單向的並且是複製的,我會在不正確的情況下添加另一個查詢。 – staticbeast