Посчитайте посещаемость за последние 12 месяцев для каждого из последних двенадцати месяцев - PullRequest
0 голосов
/ 18 апреля 2020

Спасибо за просмотр.

Я работаю в больнице, и у меня есть требование подсчитывать пациентов, которые посещали A & E 7 или более раз за последние 12 месяцев - они называются пользователями высокой интенсивности.

Мне нужно это для каждого месяца в течение последних 12 месяцев.

Например:

Для марта 2020 г. мне нужен подсчет всех пациентов, которые посетили 7 или более раз в период с 01 / 04/19 и 31/03/2020, сгруппированные по количеству посещений

Для февраля 2020 г. мне нужен подсчет всех пациентов, которые посещали 7 или более раз в период с 01/03/19 по 29/02 / 2020 и т. Д. Для каждого из предыдущих 12 месяцев, сгруппированных по количеству посещений. Итак:

7 посещений, 8 посещений, 9 и т. д. c ...

Я понимаю, что это будет своего рода динамический c запрос, однако я не слишком далеко продвинулся в этом , Я хотел бы избежать курсора, если это возможно.

До сих пор я нашел следующий скрипт для создания отдельных месяцев

with MonthsCTE as
(
    select
        BeginDate = dateadd(month, -1, dateadd(day, 1, eomonth(getdate(), -Offset.X))),
        EndDate = dateadd(day, 1, eomonth(getdate(), -Offset.X))
    from
        (values (0),(1),(2),(3),(4),(5),(6),(7),(8),(9),(10),(11)) Offset(X)
)

Моя таблица выглядит так:

SELECT  
    ae.DW_PATIENT_ID,
    ae.AE_ARRIVAL_DATE_TIME,
FROM 
    AE_ATTENDANCE ae 

Спасибо

...