0
- 消息:{ID/thread_id单}
- 收件人:{ID/thread_id单/ last_message_seen_id}
我想要检索收件人的ID有未读消息:“我计算从最后一条消息看到多少条消息”
这里的查询(有效,但我确信有更多的逻辑/简单):
SELECT r.id, (
SELECT COUNT(*)
FROM message m
WHERE m.thread_id = r.thread_id AND m.id > r.last_seen_message_id
) AS messages
FROM recipient r
WHERE (
SELECT COUNT(*)
FROM message m
WHERE m.thread_id = r.thread_id AND m.id > r.last_seen_message_id
) > 0
我觉得模型很简单,如果你需要更多的细节问。
何,我必须学习不同的JOIN ^^感谢您 –
我怎样才能获得其他领域比r.id(r.title,r.etc ...) –
将它们添加到Select和组中(它们必须都在两者中以便计数工作) –