我有两个表,关系和用户
与往常一样,关系有两个ID字段,用于关联特定上下文中的某些用户。 我需要的是在一个查询中从这两个表中检索信息,遵循以下明确的逻辑:
relations users .
id1 id2 situation id name other_fields_________________________
1 3 "inf" 1 "Rich" .
5 2 "inf" 2 "Joan" .
5 1 "inf" 3 "Rito" .
4 2 "inf" 4 "Nena" .
5 4 "inf" 5 "Sini" .
我需要 加入 来自 用户 AND (id1或id2)来自 relations 。所以,如果我的ID 5 ,我会同时获取这两个表,并从ID为 7 的用户处获取所有内容!
这是:
- >我有id 1.我要检索的内容:
id2: 3, situation: "inf", name: "Rito"
id1: 5, situation: "inf", name:"Sini"
(我开始检查关系中id 1的合作伙伴并获取他们的信息,并通过 users.id = relations.id1或relations.id2 加入我的id(1)的位置。
答案 0 :(得分:0)
这是一个简单的连接。
SELECT r.id2, r.situation, u2.name, r.id1, r.situation, u1.name
FROM users u1, users u2, relations r
WHERE u1.id = r.id1
AND u2.id = r.id2
AND u1.id = 1
使用目标ID更改最后一行