Очень плохо знаком с присоединениями и нуждается в некоторой помощи.Я создал систему обмена сообщениями и хочу прикрепить прочитанные / непрочитанные значения ко всем темам / беседам, которые есть у людей.Для этого у меня есть 3 таблицы, которые относятся конкретно к потокам:
threads, posts, post_recipients
threads
+ id
+ user_id
posts
+id
+ title
+ text
+ thread_id
+ author
post_recipients
+ id
+ post_id
+ recipient_id
+ status
Я нашел способ получить список потоков, так что теперь для каждого потока яхотите запросить, сколько сообщений прочитано / не прочитано на основе конкретного получателя.
Это то, что я написал до сих пор, но получаю сообщение об ошибке "неизвестный столбец (posts.status), поэтому я предполагаю, что я делаю неправильную сумму или объединение:
select threads.id as thread, sum(posts.status = 1) as cnt
from threads
left join (select thread_id, posts.user_id, status from posts left join post_recipients on posts.id = post_recipients.post_id) as posts on posts.thread_id = threads.id
where threads.id = 4;