Как рассчитать процент от общего числа в запросе SQL - PullRequest
0 голосов
/ 11 апреля 2019

Я использую MySQL 5.6 и имею:

select network_id, count(*) from ad_sources where cpm is NULL group by network_id;

Я хотел бы добавить значение, показывающее число, где cpm равно NULL, деленное на общее количество источников ad_sources в этой сети, умноженное на 100, чтобы результат был следующим:

network_id count  percentage
  7        6       60%

при условии, что существует 10 источников ad_source с идентификатором сети = 7 (6 с числом импульсов в минуту, равным NULL, и 4 с числом импульсов в минуту, которые не равны NULL). Как бы я это сделал?

1 Ответ

1 голос
/ 11 апреля 2019

Мне нравится использовать среднее значение для этой цели:

select network_id,
       sum( cpm is NULL ) as num_null
       avg( cpm is NULL ) as null_ratio
from ad_sources
group by network_id;

Это дает соотношение.Умножьте на 100 для процента. '

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...