MySQL (в Laravel): Как выбрать количество столбцов перед применением «группировать по», а затем выбрать количество других столбцов после применения «группировать по» - PullRequest
0 голосов
/ 14 июля 2020

Я знаю, что этот вопрос может показаться запутанным. Позвольте мне проиллюстрировать это на примере.

Скажем, прямо сейчас у меня есть 4 tables: tags, posts, replies, and post_tag (для связи "много-много" между сообщениями и тегами).

Теперь я хочу посчитать как number of posts and number of replies per tag.

Подсчитать количество сообщений для каждого тега легко, это будет просто примерно так:

select
    count(*)
from
    posts
inner join post_tag
    on posts.id = post_tag.post_id
inner join tags
    on tags.id = post_tag.tag_id

Точно так же очень легко подсчитать количество ответов на тег. Однако как мне использовать ОДИН запрос, чтобы получить все теги с их количеством сообщений и количеством ответов одновременно?

...