我无法将头绕在 SQL 查询上,试图找出一些东西。
很快,这是我的(简单)表格:它是在社交网站中添加的朋友的代表。我必须使用这样的表格格式,user1 和 user2 都是主键。
User1 | User2
--------------------------------------
foo@a.com | things@stuff.com
foo@a.com | lala@hi.com
things@stuff.com| lol@k.com
lol@k.com | foo@a.com
foo@a.com | lol@k.com
我需要做的是编写一个 SELECT 语句,该语句将返回所有与 foo@a.com 成为朋友的唯一用户。
SELECT User2
FROM members
WHERE User1 = 'things@stuff.com'
会返回 lol@k.com 而不是 foo@a.com,即使我需要它来返回后者。
SELECT *
FROM members
WHERE User1 = 'foo@a.com'
OR User2 = 'foo@a.com'
我认为会返回错误吗?可能选择多列的东西。
所以我认为联合加入或其他一些加入是必要的(联合所以没有重复?)但我真的不确定如何去做。
我正在尝试在 PHP 中实现这一点,所以即使我写的最后一个查询有效,我不确定如何回显 User1 或 User2 取决于它返回的/如果有意义的话我需要哪个。