У меня есть таблица со столбцами: NAME, CHANGE_ID и CHANGE_DATE, где каждая строка представляет собой одно изменение, в столбцах указано, кто внес изменение (имя), когда оно было сделано (метка времени), и идентификатор для изменения(целое число).
Я могу получить список имен, отсортированных по тем, которые произвели больше всего изменений (за последний месяц), с помощью следующего запроса:
SELECT
NAME AS name,
COUNT(DISTINCT CHANGE_ID) AS changes
FROM
CHANGE_TABLE
WHERE
DATE(CHANGE_DATE) > DATE(now() - INTERVAL 1 MONTH)
GROUP BY
name
ORDER BY
changes DESC
И я могу получитьсписок изменений, внесенных за месяц за последние 10 месяцев, с помощью следующего запроса:
SELECT
DATE_FORMAT(CHANGE_DATE, '%Y-%m') AS date,
COUNT(DISTINCT CHANGE_ID) AS change_count
FROM
CHANGE_TABLE
WHERE
CHANGE_DATE > curdate() - INTERVAL 10 MONTH
GROUP BY
date
Мне нужен запрос, который будет возвращать объединенную информацию об этих запросах: мне нужны имена верхнего изменения-мейкеры и сколько изменений они вносили каждый месяц за последние 10 месяцев.Меня не особо волнует, как выглядит итоговая таблица, пока есть данные.Я сломал свой мозг, но мое понимание SQL недостаточно велико, чтобы решить проблему.Любая помощь будет оценена.