Подсчитать количество записей и суммировать значения из нескольких связанных таблиц
Есть 4 таблицы между собой связанные. главной таблице sats хранится пользовательские данные. по полю sats.idподсчитать сколько пользователей зарегистрирован и сгруппировать по полью sats_id. sats_id связан с таблицей sum.id,(sats.id = sum.id). SELECT sum.name AS 'категория', COUNT(sats.sats_id) AS 'пользователи' FROM sats JOIN sum ON sats.sats_id = sum.id GROUP BY sum.name;. тут нужно еще одно поле суммировать, таблица dslam.dslamType_id. сгруппировать так же по полю sum.name

получается вот такой результат SELECT dslam.sats_id, SUM(dslamtype.name) FROM dslam JOIN dslamtype ON dslam.dslamType_id = dslamtype.id GROUP BY sats_id; получается вот такой результат 
теперь нужно их объединить
ссылка на исходный код [https://www.mycompiler.io/view/Gg0d3jrzPSH]
Ответы (1 шт):
Получается вот так:
-- объединение
SELECT `sum`.name AS `категория`,
COUNT(sats.id) AS `пользователи`,
sums.`сумма`
FROM sats
JOIN `sum` ON sats.sats_id = `sum`.id
JOIN ( SELECT dslam.sats_id, SUM(dslamtype.name) `сумма`
FROM dslam
JOIN dslamtype ON dslam.dslamType_id = dslamtype.id
GROUP BY dslam.sats_id ) sums ON sums.sats_id = sats.sats_id
GROUP BY `sum`.name, sums.`сумма`
fiddle с некоторыми пояснениями.
Проверьте логику.
