我有一个简单的消息系统,现在消息应按主题分组。所以表格如下:
id | sender | recipient | subject
------------------------------------
1 | 16 | 17 | Hello
2 | 17 | 16 | Hello
3 | 12 | 16 | Hello
“sender”和“recipient”是用户表中的id。
因此,用户将看到按主题分组的消息,这可能很容易被GROUP BY。
问题在于,邮件也是分组的,具有相同的主题,但其他发件人和收件人。只有发件人和收件人是相同的,才可以对邮件进行分组吗?在示例中,消息1和2应该分组,但不应该分组3.所以我需要分组2列。
答案 0 :(得分:0)
也许......我不确定我是否完全理解这个问题。
Select A.ID, A.Sender, A.Recipient, A.Subject
FROM tableName A
LEFT JOIN tableName B
on A.Sender=B.Recipient
AND A.Subject=B.Subject
Where Sender.ID = USERLOGGEDIN OR B.Recipient = USERLOGGEDIN
ORDER By Subject, ID