victorzadorozhnyy
@victorzadorozhnyy

Как сделать выборку с группировкой по частоте встречания ID в другой выборке?

Задача сделать выборку в которой показывает как часто одни и те же пациенты обращаются в клинику.
Есть две таблицы из которых делаем выборку ID пациентов
SELECT ps_ur FROM patient_services AS ur JOIN ( SELECT eng_ur FROM engagements WHERE eng_ur > 1 AND ( eng_datetime BETWEEN '2015-01-01' AND '2017-01-01' )) AS ur WHERE ( ps_datetime BETWEEN '2015-01-01' AND '2017-01-01' )

Теперь нужно посчитать кто из них обращался
<5, 5-10, 10-15, 15-20, 20+ раз

Не могу сообразить как сделать группировку по неизвестному ps_ur, SUM() ведь не посчитаешь...
  • Вопрос задан
  • 117 просмотров
Решения вопроса 1
MaxDukov
@MaxDukov
впишусь в проект как SRE/DevOps.
посчитайте COUNT с группировкой по ID.
Далее если надо прямо SQL-ем вытянуть ответ - сохраняете результат первого селекста с каунтом (COUNT... AS visit_num) и группировкой во временную таблицу, а потом из нее делаете селект с WHERE visit_num < 5 UNION ... WHERE visit_num between ... UNION... добавляя идентификатор диапозона .
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы