在其他字段上选择具有相同值的行

时间:2014-04-23 15:01:44

标签: php sql symfony

所以,我有一个实体(我使用symfony)Participant

在此实体中,我有:id account_id conversation_id

account_idUser对象,conversation_idConversation对象,都是外键。

我需要知道,对于开始,user1和user2是否在同一个对话中。 在我需要知道user1,user2 .... userN是否在同一个会话中之后。

我不知道如何只使用查询来做到这一点?谢谢!

1 个答案:

答案 0 :(得分:1)

SELECT
   n.*
FROM
   Participant n JOIN
(
  SELECT 
      t.conversation_id
  FROM
      Participant t
  WHERE 
          t.user_id = 'user1' 
      AND 
          t.conversation_id = (SELECT conversation_id FROM Participant WHERE user_id = 'user2' AND conversation_id = t.conversation_id)
) m on m.conversation_id = n.conversation_id