Mam problem z łączeniem trzech tabel w mysql.Jak wyjść z łączenia wielu do wielu tabel w mysql?
powiedzmy, że mamy tabelę o nazwie posts
który trzymam wpisy w nim, mam tabeli o nazwie likes
które przechowywać USER_ID tych i post_id w a trzecia tabela o nazwie comments
które przechowywać USER_ID tych i post_id i tekst komentarza w nim .
Potrzebuję kwerendy, która pobiera listę moich wpisów, z liczbą polubień i komentarzy dla każdego wpisu.
Im przy użyciu tej kwerendy:
SELECT posts.id, count(comments.id) as total_comments, count(likes.id) as total_likes
FROM `posts`
LEFT OUTER JOIN comments ON comments.post_id = posts.id
LEFT OUTER JOIN likes ON likes.post_id = posts.id
GROUP BY posts.id
ale nie ma problemu z tym zapytaniem, czy komentarze są puste dla elementu, lubi liczba jest po prostu ok, ale powiedzmy, że jeśli wpis ma 2 komentarzy i 4 lubi, zarówno total_comments, jak i total_likes będą miały wartość "8", co oznacza, że mysql je mnoży. Jestem zdezorientowany i nie wiem, co powinienem zrobić.
Dzięki za pomoc.
Dzięki, pracował jak czar. – Sallar