MySQL使用连接排除ID

时间:2015-12-11 08:26:42

标签: mysql join anti-join

我有两张桌子:

{{1}}

我想获取所有消息,但如果消息包含“DELETED”,则使用JOIN并且不使用NOT IN将此消息的'userID从所有消息中排除(在此消息之后不返回来自userID 3和2的消息)。 谢谢你的帮助。

1 个答案:

答案 0 :(得分:0)

这应该选择没有DELETED消息的用户的所有消息:

   SELECT m.*
     FROM message m
LEFT JOIN message m2
       ON m2.uid = m.uid 
      AND m2.message = 'DELETED'
    WHERE m2.mid IS NULL;