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和組中(它們必須都在兩者中以便計數工作) –