Mysql count дубликат значения другой столбец - PullRequest
0 голосов
/ 06 июня 2018

Я хочу посчитать одно и то же значение среди parent_id и id_article, но оно может быть 0, если среди parent_id и id_article нет одинакового значения

table:t_article
id_article      parent_id
441             0
1093            18
18              0
3141            3130
3130            0
3140            3130
3142            3130

Ожидаемый результат

id_article      parent_id       Total
441             0               0
1093            18              0
18              0               1
3141            3130            0
3130            0               3
3140            3130            0
3142            3130            0

Как мне это сделать?

1 Ответ

0 голосов
/ 06 июня 2018

Вы можете получить свой счет, выполнив подпункт, а затем присоединиться к вашему основному запросу

select a.*, coalesce(b.cnt,0)
from t_article a
left join (
  select parent_id, sum(parent_id <> 0) cnt
  from t_article 
  group by parent_id
) b on (a.id_article = b.parent_id)

Демо

...