0

我有以下消息表:

在此处输入图像描述

我想列出收件箱中的所有消息,例如,
假设我是 1 号用户,所以我的收件箱应该显示
以下内容:

用户 2
的消息 用户 3
的消息 用户 4 的消息

为此构建查询的最佳方法是什么?

我想出了一些奇怪的查询,看起来像:(伪代码)

SELECT
    *
FROM
    `message`
WHERE
    (`user_id_sender` = 1 AND `user_id_receiver` NOT 1)
    OR
    (`user_id_sender` NOT 1 AND `user_id_receiver` = 1)

谢谢

4

1 回答 1

0

这很简单

SELECT user_id_sender ID,
       (SELECT user_id_reciever 
        FROM messages 
        WHERE user_id_sender NOT IN(ID) 
        GROUP BY user_id_reciever
       )
FROM message
于 2012-05-03T08:56:29.560 回答