我有两张桌子。您可以查看表格的此链接:http://sqlfiddle.com/#!2/feb71/1
我也有这个问题:
SELECT convID,Member1,Member2
FROM tb_conversation WHERE Member1 = '1008' OR Member2 = '1008'
表tb_conversation
的第一个查询是创建一个新列,该列将包含不具有成员100的id的列的记录。
实施例
| CONVID | MEMBER1 | MEMBER2 | newColumn |
| 1 | 1008 | 1017 | 1017 |
第二个查询是加入2个表并检查这2个成员之间是否存在关联(要有关系,有{1}} fromID = 1008
到toID = 1017
relStatus = 1
有2个记录1其他记录为fromID = 1017
到toID = 1008
relStatus
1)
实际上我需要得到我朋友列表中的成员(并且存在对话)以及我朋友列表中没有的成员(并且存在对话)。
有什么建议吗?
答案 0 :(得分:0)
怎么样:
select tb0.*, tm0.relStatus from tb_conversation tb0 join
tb_member_relation tm0 on
tm0.fromID = tb0.Member1 or
tm0.toID = tb0.Member1 or
tm0.fromID = tb0.Member2 or
tm0.toID = tb0.Member2
where tm0.fromID = 1008 or tm0.toID = 1008;
此 应该<* em>为您提供涉及1008的对话。
<强>但强>
如果您更改了表格结构,则无需使用&#39;和&#39;到&#39;只是使用对话的结尾,你可以简化这一点。