MySQL - 获取具有相同值的行

时间:2014-08-23 05:46:41

标签: mysql

我有两个表用于具有会话功能的应用。它有一个会话表,用于保存会话会话,以及一个会话参与者表,用于保存会话的参与者。现在,我想让所有其他参与者与我进行对话。

`sessions` table
+----+---------+
| id | session |
+----+---------+
|  1 | A       |
|  2 | B       |
|  3 | C       |
+----+---------+


`session_participants` table
+----+---------+------+
| id | session | user |
+----+---------+------+
|  1 | A       |    1 |
|  2 | A       |    2 |
|  3 | B       |    3 |
|  4 | B       |    2 |
|  5 | C       |    1 |
|  6 | C       |    4 |
+----+---------+------+

假设我的ID为 1 ,我如何才能获得ID 2 & 4 我在会话A& C 1

感谢您的回复。

1 个答案:

答案 0 :(得分:1)

SELECT sp2.user
FROM session_participants AS sp1
JOIN session_participants AS sp2 ON sp2.session = sp1.session AND sp2.id != sp1.id
WHERE sp1.user = 1