Надо посчитать одним запросом сколько мастеров для каждого города, почему подсчёт не объединяется и как это сделать?
CREATE TABLE `master_user` (
`id` int(10) UNSIGNED NOT NULL,
`user_id` int(11) NOT NULL,
`master_id` int(11) NOT NULL,
`city_id` int(11) DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
--
-- Дамп данных таблицы `master_user`
--
INSERT INTO `master_user` (`id`, `user_id`, `master_id`, `city_id`) VALUES
(15, 16, 3, 4019),
(18, 16, 5, 4019),
(19, 16, 4, 4019),
(20, 16, 2, 4019),
(21, 17, 4, 4019),
(22, 17, 2, 4400);
--
-- Индексы сохранённых таблиц
--
--
-- Индексы таблицы `master_user`
--
ALTER TABLE `master_user`
ADD PRIMARY KEY (`id`);
--
-- AUTO_INCREMENT для сохранённых таблиц
--
--
-- AUTO_INCREMENT для таблицы `master_user`
--
ALTER TABLE `master_user`
MODIFY `id` int(10) UNSIGNED NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=23;
COMMIT;
SELECT master_id, COUNT(*) FROM master_user WHERE city_id = 4019 GROUP BY id