Задание - /* Есть 3 таблицы.
Необходимо написать запрос, который выберет список сайтов (site), у которых есть более трёх активных (status=1) блоков (site_area).
Выборка должна содержать четыре поля: id сайта, url сайта, общее число показов и общий доход на этом сайте (со всех его блоков).
Данные таблиц - # список сайтов
CREATE TABLE IF NOT EXISTS `site` (
`site_id` INT(12) UNSIGNED NOT NULL,
`url` VARCHAR(255) NOT NULL,
`user_id` INT(12) UNSIGNED NOT NULL,
`status` INT(12) UNSIGNED NOT NULL,
PRIMARY KEY (`site_id`)
)
DEFAULT CHARSET = utf8;
INSERT INTO `site` (`site_id`, `url`, `user_id`, `status`) VALUES
('1025', 'site1.com', '275', 1),
('1026', 'test_site.net', '278', 0),
('1027', 'site17.net', '275', 1),
('1028', 'test_test_site.fr', '270', 1);
SELECT
Site_id, url,
COUNT(DISTINCT site_area.site_area_id) active_blocks,
SUM(impression_count) impression_count,
SUM(revenue) revenue
FROM site
JOIN site_area USING(site_id)
LEFT JOIN npm_site_area_stat_cache USING(site_area_id)
WHERE site_area.status = 1
GROUP BY site_id, url
HAVING COUNT(DISTINCT site_area.site_area_id) > 3;