SELECT b . * , CONCAT( GROUP_CONCAT( c.name ) ) categories, CONCAT( GROUP_CONCAT( c.id ) ) cid
FROM books b
JOIN categories_of_books cb ON b.id = cb.book_id
JOIN categories c ON c.id = cb.category_id
GROUP BY b.id
Все хорошо, он в categories мне пихает, все категории книги, а в cids id`шники всех категории, я потом это обрабатываю и все классно.
Но если, я добавлю условие WHERE c.category_id = 10, то в categories теперь не будет всех категорий книги, а только та, которую я указал и это понятно.
Есть ли способ, ограничить условием, но что бы в categories так и оставались все категории.