Advertisement
temaon_lieto

Test for 4th page

Mar 4th, 2024
89
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. EXPLAIN ANALYSE
  2. WITH "hypertension_cnt" AS (WITH "items" AS (SELECT "mv_stat_lvl_0_ehr_service_requests".*
  3.                                              FROM ((SELECT mv_stat_lvl_0_ehr_service_requests.id,
  4.                                                            mv_stat_lvl_0_ehr_service_requests.asserted_date,
  5.                                                            mv_stat_lvl_0_ehr_service_requests.code,
  6.                                                            mv_stat_lvl_0_ehr_service_requests.item_type,
  7.                                                            mv_stat_lvl_0_ehr_service_requests.status::varchar,
  8.                                                            mv_stat_lvl_0_ehr_service_requests.title,
  9.                                                            mv_stat_lvl_0_ehr_service_requests.employee_id,
  10.                                                            mv_stat_lvl_0_ehr_service_requests.legal_entity_id,
  11.                                                            mv_stat_lvl_0_ehr_service_requests.patient_id
  12.                                                     FROM "mv_stat_lvl_0_ehr_service_requests"
  13.                                                     WHERE "mv_stat_lvl_0_ehr_service_requests"."asserted_date" BETWEEN '2024-01-01 00:00:00' AND '2024-03-04 23:59:59.999999'
  14.                                                       AND "mv_stat_lvl_0_ehr_service_requests"."legal_entity_id" = 3228)
  15.                                                    UNION
  16.                                                    (SELECT mv_stat_lvl_0_ehr_diagnostic_reports.id,
  17.                                                            mv_stat_lvl_0_ehr_diagnostic_reports.asserted_date,
  18.                                                            mv_stat_lvl_0_ehr_diagnostic_reports.code,
  19.                                                            mv_stat_lvl_0_ehr_diagnostic_reports.item_type,
  20.                                                            mv_stat_lvl_0_ehr_diagnostic_reports.status::varchar,
  21.                                                            mv_stat_lvl_0_ehr_diagnostic_reports.title,
  22.                                                            mv_stat_lvl_0_ehr_diagnostic_reports.employee_id,
  23.                                                            mv_stat_lvl_0_ehr_diagnostic_reports.legal_entity_id,
  24.                                                            mv_stat_lvl_0_ehr_diagnostic_reports.patient_id
  25.                                                     FROM "mv_stat_lvl_0_ehr_diagnostic_reports"
  26.                                                     WHERE "mv_stat_lvl_0_ehr_diagnostic_reports"."asserted_date" BETWEEN '2024-01-01 00:00:00' AND '2024-03-04 23:59:59.999999'
  27.                                                       AND "mv_stat_lvl_0_ehr_diagnostic_reports"."legal_entity_id" = 3228)) "mv_stat_lvl_0_ehr_service_requests")
  28.                             SELECT COALESCE(COUNT(DISTINCT mv_stat_lvl_1_declarations.id), 0) as counter,
  29.                                    mv_stat_lvl_1_declarations.employee_id                     as employee_id
  30.                             FROM "mv_stat_lvl_1_declarations"
  31.                                      INNER JOIN "mv_stat_lvl_1_patients" ON "mv_stat_lvl_1_patients"."id" =
  32.                                                                             "mv_stat_lvl_1_declarations"."patient_id"
  33.                                      JOIN items
  34.                                           ON items.legal_entity_id = mv_stat_lvl_1_declarations.legal_entity_id AND
  35.                                              items.patient_id = mv_stat_lvl_1_declarations.patient_id
  36.                             WHERE "mv_stat_lvl_1_declarations"."legal_entity_id" = 3228
  37.                               AND "items"."code" IN ('T34006', 'T34011', 'T34013', 'T34024', 'T34001', 'T34004')
  38.                               AND ("mv_stat_lvl_1_patients"."gender" = 0 AND (DATE_PART('YEAR',
  39.                                                                                         AGE('2024-03-04 23:59:59.999999', mv_stat_lvl_1_patients.birth_date)) BETWEEN 50 AND 999) OR
  40.                                    "mv_stat_lvl_1_patients"."gender" = 1 AND (DATE_PART('YEAR',
  41.                                                                                         AGE('2024-03-04 23:59:59.999999', mv_stat_lvl_1_patients.birth_date)) BETWEEN 40 AND 999))
  42.                               AND "items"."asserted_date" BETWEEN '2024-01-01 00:00:00' AND '2024-03-04 23:59:59.999999'
  43.                             GROUP BY "mv_stat_lvl_1_declarations"."employee_id"),
  44.      "diabetes_cnt" AS (WITH "items" AS (SELECT "mv_stat_lvl_0_ehr_service_requests".*
  45.                                          FROM ((SELECT "mv_stat_lvl_0_ehr_service_requests".*
  46.                                                 FROM ((SELECT mv_stat_lvl_0_ehr_service_requests.id,
  47.                                                               mv_stat_lvl_0_ehr_service_requests.asserted_date,
  48.                                                               mv_stat_lvl_0_ehr_service_requests.code,
  49.                                                               mv_stat_lvl_0_ehr_service_requests.item_type,
  50.                                                               mv_stat_lvl_0_ehr_service_requests.status::varchar,
  51.                                                               mv_stat_lvl_0_ehr_service_requests.title,
  52.                                                               mv_stat_lvl_0_ehr_service_requests.employee_id,
  53.                                                               mv_stat_lvl_0_ehr_service_requests.legal_entity_id,
  54.                                                               mv_stat_lvl_0_ehr_service_requests.patient_id
  55.                                                        FROM "mv_stat_lvl_0_ehr_service_requests"
  56.                                                        WHERE "mv_stat_lvl_0_ehr_service_requests"."asserted_date" BETWEEN '2024-01-01 00:00:00' AND '2024-03-04 23:59:59.999999'
  57.                                                          AND "mv_stat_lvl_0_ehr_service_requests"."legal_entity_id" = 3228)
  58.                                                       UNION
  59.                                                       (SELECT mv_stat_lvl_0_ehr_diagnostic_reports.id,
  60.                                                               mv_stat_lvl_0_ehr_diagnostic_reports.asserted_date,
  61.                                                               mv_stat_lvl_0_ehr_diagnostic_reports.code,
  62.                                                               mv_stat_lvl_0_ehr_diagnostic_reports.item_type,
  63.                                                               mv_stat_lvl_0_ehr_diagnostic_reports.status::varchar,
  64.                                                               mv_stat_lvl_0_ehr_diagnostic_reports.title,
  65.                                                               mv_stat_lvl_0_ehr_diagnostic_reports.employee_id,
  66.                                                               mv_stat_lvl_0_ehr_diagnostic_reports.legal_entity_id,
  67.                                                               mv_stat_lvl_0_ehr_diagnostic_reports.patient_id
  68.                                                        FROM "mv_stat_lvl_0_ehr_diagnostic_reports"
  69.                                                        WHERE "mv_stat_lvl_0_ehr_diagnostic_reports"."asserted_date" BETWEEN '2024-01-01 00:00:00' AND '2024-03-04 23:59:59.999999'
  70.                                                          AND "mv_stat_lvl_0_ehr_diagnostic_reports"."legal_entity_id" = 3228)) "mv_stat_lvl_0_ehr_service_requests")
  71.                                                UNION
  72.                                                (SELECT mv_stat_lvl_1_ehr_observations.id,
  73.                                                        mv_stat_lvl_1_ehr_observations.asserted_date,
  74.                                                        mv_stat_lvl_1_ehr_observations.code,
  75.                                                        1                as item_type,
  76.                                                        'final'::varchar as status,
  77.                                                        mv_stat_lvl_1_ehr_observations.title,
  78.                                                        mv_stat_lvl_1_ehr_observations.employee_id,
  79.                                                        mv_stat_lvl_1_ehr_observations.legal_entity_id,
  80.                                                        mv_stat_lvl_1_ehr_observations.patient_id
  81.                                                 FROM "mv_stat_lvl_1_ehr_observations"
  82.                                                 WHERE "mv_stat_lvl_1_ehr_observations"."asserted_date" BETWEEN '2024-01-01 00:00:00' AND '2024-03-04 23:59:59.999999'
  83.                                                   AND "mv_stat_lvl_1_ehr_observations"."legal_entity_id" = 3228)) "mv_stat_lvl_0_ehr_service_requests")
  84.                         SELECT COALESCE(COUNT(DISTINCT mv_stat_lvl_1_declarations.id), 0) as counter,
  85.                                mv_stat_lvl_1_declarations.employee_id                     as employee_id
  86.                         FROM "mv_stat_lvl_1_declarations"
  87.                                  INNER JOIN "mv_stat_lvl_1_patients"
  88.                                             ON "mv_stat_lvl_1_patients"."id" = "mv_stat_lvl_1_declarations"."patient_id"
  89.                                  JOIN items ON items.legal_entity_id = mv_stat_lvl_1_declarations.legal_entity_id AND
  90.                                                items.patient_id = mv_stat_lvl_1_declarations.patient_id
  91.                         WHERE "mv_stat_lvl_1_declarations"."legal_entity_id" = 3228
  92.                           AND "items"."code" IN ('T34005', 'T34023', 'T34025', 'T34038', '14743-9')
  93.                           AND (DATE_PART('YEAR',
  94.                                          AGE('2024-03-04 23:59:59.999999', mv_stat_lvl_1_patients.birth_date)) BETWEEN 45 AND 999)
  95.                           AND "items"."asserted_date" BETWEEN '2024-01-01 00:00:00' AND '2024-03-04 23:59:59.999999'
  96.                         GROUP BY "mv_stat_lvl_1_declarations"."employee_id"),
  97.      "prostate_cancer_cnt" AS (WITH "items" AS (SELECT mv_stat_lvl_0_ehr_service_requests.id,
  98.                                                        mv_stat_lvl_0_ehr_service_requests.asserted_date,
  99.                                                        mv_stat_lvl_0_ehr_service_requests.code,
  100.                                                        mv_stat_lvl_0_ehr_service_requests.item_type,
  101.                                                        mv_stat_lvl_0_ehr_service_requests.status::varchar,
  102.                                                        mv_stat_lvl_0_ehr_service_requests.title,
  103.                                                        mv_stat_lvl_0_ehr_service_requests.employee_id,
  104.                                                        mv_stat_lvl_0_ehr_service_requests.legal_entity_id,
  105.                                                        mv_stat_lvl_0_ehr_service_requests.patient_id
  106.                                                 FROM "mv_stat_lvl_0_ehr_service_requests"
  107.                                                 WHERE "mv_stat_lvl_0_ehr_service_requests"."asserted_date" BETWEEN '2024-01-01 00:00:00' AND '2024-03-04 23:59:59.999999'
  108.                                                   AND "mv_stat_lvl_0_ehr_service_requests"."legal_entity_id" = 3228)
  109.                                SELECT COALESCE(COUNT(DISTINCT mv_stat_lvl_1_declarations.id), 0) as counter,
  110.                                       mv_stat_lvl_1_declarations.employee_id                     as employee_id
  111.                                FROM "mv_stat_lvl_1_declarations"
  112.                                         INNER JOIN "mv_stat_lvl_1_patients" ON "mv_stat_lvl_1_patients"."id" =
  113.                                                                                "mv_stat_lvl_1_declarations"."patient_id"
  114.                                         JOIN items
  115.                                              ON items.legal_entity_id = mv_stat_lvl_1_declarations.legal_entity_id AND
  116.                                                 items.patient_id = mv_stat_lvl_1_declarations.patient_id
  117.                                WHERE "mv_stat_lvl_1_declarations"."legal_entity_id" = 3228
  118.                                  AND "items"."code" IN ('U67002', 'Y34011', 'Y34003')
  119.                                  AND "mv_stat_lvl_1_patients"."gender" = 0
  120.                                  AND (DATE_PART('YEAR',
  121.                                                 AGE('2024-03-04 23:59:59.999999', mv_stat_lvl_1_patients.birth_date)) BETWEEN 40 AND 999)
  122.                                  AND "items"."asserted_date" BETWEEN '2024-01-01 00:00:00' AND '2024-03-04 23:59:59.999999'
  123.                                GROUP BY "mv_stat_lvl_1_declarations"."employee_id"),
  124.      "breast_cancer_cnt" AS (WITH "items" AS (SELECT mv_stat_lvl_0_ehr_service_requests.id,
  125.                                                      mv_stat_lvl_0_ehr_service_requests.asserted_date,
  126.                                                      mv_stat_lvl_0_ehr_service_requests.code,
  127.                                                      mv_stat_lvl_0_ehr_service_requests.item_type,
  128.                                                      mv_stat_lvl_0_ehr_service_requests.status::varchar,
  129.                                                      mv_stat_lvl_0_ehr_service_requests.title,
  130.                                                      mv_stat_lvl_0_ehr_service_requests.employee_id,
  131.                                                      mv_stat_lvl_0_ehr_service_requests.legal_entity_id,
  132.                                                      mv_stat_lvl_0_ehr_service_requests.patient_id
  133.                                               FROM "mv_stat_lvl_0_ehr_service_requests"
  134.                                               WHERE "mv_stat_lvl_0_ehr_service_requests"."asserted_date" BETWEEN '2024-01-01 00:00:00' AND '2024-03-04 23:59:59.999999'
  135.                                                 AND "mv_stat_lvl_0_ehr_service_requests"."legal_entity_id" = 3228)
  136.                              SELECT COALESCE(COUNT(DISTINCT mv_stat_lvl_1_declarations.id), 0) as counter,
  137.                                     mv_stat_lvl_1_declarations.employee_id                     as employee_id
  138.                              FROM "mv_stat_lvl_1_declarations"
  139.                                       INNER JOIN "mv_stat_lvl_1_patients" ON "mv_stat_lvl_1_patients"."id" =
  140.                                                                              "mv_stat_lvl_1_declarations"."patient_id"
  141.                                       JOIN items
  142.                                            ON items.legal_entity_id = mv_stat_lvl_1_declarations.legal_entity_id AND
  143.                                               items.patient_id = mv_stat_lvl_1_declarations.patient_id
  144.                              WHERE "mv_stat_lvl_1_declarations"."legal_entity_id" = 3228
  145.                                AND "items"."code" IN ('Х41941', 'X41973', '59300-00', '55070-00', '55076-00')
  146.                                AND "mv_stat_lvl_1_patients"."gender" = 1
  147.                                AND (DATE_PART('YEAR',
  148.                                               AGE('2024-03-04 23:59:59.999999', mv_stat_lvl_1_patients.birth_date)) BETWEEN 59 AND 69)
  149.                                AND "items"."asserted_date" BETWEEN '2024-01-01 00:00:00' AND '2024-03-04 23:59:59.999999'
  150.                              GROUP BY "mv_stat_lvl_1_declarations"."employee_id"),
  151.      "colorectal_cancer_cnt" AS (WITH "items" AS (SELECT mv_stat_lvl_0_ehr_service_requests.id,
  152.                                                          mv_stat_lvl_0_ehr_service_requests.asserted_date,
  153.                                                          mv_stat_lvl_0_ehr_service_requests.code,
  154.                                                          mv_stat_lvl_0_ehr_service_requests.item_type,
  155.                                                          mv_stat_lvl_0_ehr_service_requests.status::varchar,
  156.                                                          mv_stat_lvl_0_ehr_service_requests.title,
  157.                                                          mv_stat_lvl_0_ehr_service_requests.employee_id,
  158.                                                          mv_stat_lvl_0_ehr_service_requests.legal_entity_id,
  159.                                                          mv_stat_lvl_0_ehr_service_requests.patient_id
  160.                                                   FROM "mv_stat_lvl_0_ehr_service_requests"
  161.                                                   WHERE "mv_stat_lvl_0_ehr_service_requests"."asserted_date" BETWEEN '2024-01-01 00:00:00' AND '2024-03-04 23:59:59.999999'
  162.                                                     AND "mv_stat_lvl_0_ehr_service_requests"."legal_entity_id" = 3228)
  163.                                  SELECT COALESCE(COUNT(DISTINCT mv_stat_lvl_1_declarations.id), 0) as counter,
  164.                                         mv_stat_lvl_1_declarations.employee_id                     as employee_id
  165.                                  FROM "mv_stat_lvl_1_declarations"
  166.                                           INNER JOIN "mv_stat_lvl_1_patients" ON "mv_stat_lvl_1_patients"."id" =
  167.                                                                                  "mv_stat_lvl_1_declarations"."patient_id"
  168.                                           JOIN items
  169.                                                ON items.legal_entity_id = mv_stat_lvl_1_declarations.legal_entity_id AND
  170.                                                   items.patient_id = mv_stat_lvl_1_declarations.patient_id
  171.                                  WHERE "mv_stat_lvl_1_declarations"."legal_entity_id" = 3228
  172.                                    AND "items"."code" IN
  173.                                        ('D36003', 'D67006', '32084-00', '32090-00', '32084-02', '32090-02')
  174.                                    AND "mv_stat_lvl_1_patients"."gender" = 0
  175.                                    AND (DATE_PART('YEAR',
  176.                                                   AGE('2024-03-04 23:59:59.999999', mv_stat_lvl_1_patients.birth_date)) BETWEEN 50 AND 75)
  177.                                    AND "items"."asserted_date" BETWEEN '2024-01-01 00:00:00' AND '2024-03-04 23:59:59.999999'
  178.                                  GROUP BY "mv_stat_lvl_1_declarations"."employee_id"),
  179.      "hiv_cnt" AS (WITH "items" AS (SELECT "mv_stat_lvl_0_ehr_service_requests".*
  180.                                     FROM ((SELECT mv_stat_lvl_0_ehr_service_requests.id,
  181.                                                   mv_stat_lvl_0_ehr_service_requests.asserted_date,
  182.                                                   mv_stat_lvl_0_ehr_service_requests.code,
  183.                                                   mv_stat_lvl_0_ehr_service_requests.item_type,
  184.                                                   mv_stat_lvl_0_ehr_service_requests.status::varchar,
  185.                                                   mv_stat_lvl_0_ehr_service_requests.title,
  186.                                                   mv_stat_lvl_0_ehr_service_requests.employee_id,
  187.                                                   mv_stat_lvl_0_ehr_service_requests.legal_entity_id,
  188.                                                   mv_stat_lvl_0_ehr_service_requests.patient_id
  189.                                            FROM "mv_stat_lvl_0_ehr_service_requests"
  190.                                            WHERE "mv_stat_lvl_0_ehr_service_requests"."asserted_date" BETWEEN '2024-01-01 00:00:00' AND '2024-03-04 23:59:59.999999'
  191.                                              AND "mv_stat_lvl_0_ehr_service_requests"."legal_entity_id" = 3228)
  192.                                           UNION
  193.                                           (SELECT mv_stat_lvl_0_ehr_diagnostic_reports.id,
  194.                                                   mv_stat_lvl_0_ehr_diagnostic_reports.asserted_date,
  195.                                                   mv_stat_lvl_0_ehr_diagnostic_reports.code,
  196.                                                   mv_stat_lvl_0_ehr_diagnostic_reports.item_type,
  197.                                                   mv_stat_lvl_0_ehr_diagnostic_reports.status::varchar,
  198.                                                   mv_stat_lvl_0_ehr_diagnostic_reports.title,
  199.                                                   mv_stat_lvl_0_ehr_diagnostic_reports.employee_id,
  200.                                                   mv_stat_lvl_0_ehr_diagnostic_reports.legal_entity_id,
  201.                                                   mv_stat_lvl_0_ehr_diagnostic_reports.patient_id
  202.                                            FROM "mv_stat_lvl_0_ehr_diagnostic_reports"
  203.                                            WHERE "mv_stat_lvl_0_ehr_diagnostic_reports"."asserted_date" BETWEEN '2024-01-01 00:00:00' AND '2024-03-04 23:59:59.999999'
  204.                                              AND "mv_stat_lvl_0_ehr_diagnostic_reports"."legal_entity_id" = 3228)) "mv_stat_lvl_0_ehr_service_requests")
  205.                    SELECT COALESCE(COUNT(DISTINCT mv_stat_lvl_1_declarations.id), 0) as counter,
  206.                           mv_stat_lvl_1_declarations.employee_id                     as employee_id
  207.                    FROM "mv_stat_lvl_1_declarations"
  208.                             INNER JOIN "mv_stat_lvl_1_patients"
  209.                                        ON "mv_stat_lvl_1_patients"."id" = "mv_stat_lvl_1_declarations"."patient_id"
  210.                             JOIN items ON items.legal_entity_id = mv_stat_lvl_1_declarations.legal_entity_id AND
  211.                                           items.patient_id = mv_stat_lvl_1_declarations.patient_id
  212.                    WHERE "mv_stat_lvl_1_declarations"."legal_entity_id" = 3228
  213.                      AND "items"."code" IN ('B33006', 'B33012')
  214.                      AND (DATE_PART('YEAR',
  215.                                     AGE('2024-03-04 23:59:59.999999', mv_stat_lvl_1_patients.birth_date)) BETWEEN 14 AND 999)
  216.                      AND "items"."asserted_date" BETWEEN '2024-01-01 00:00:00' AND '2024-03-04 23:59:59.999999'
  217.                    GROUP BY "mv_stat_lvl_1_declarations"."employee_id"),
  218.      "visits_from_40_to_64_cnt" AS (WITH "patients" AS (SELECT "mv_stat_lvl_1_patients".*
  219.                                                         FROM "mv_stat_lvl_1_patients"
  220.                                                         WHERE (DATE_PART('YEAR',
  221.                                                                          AGE('2024-03-04 23:59:59.999999', mv_stat_lvl_1_patients.birth_date)) BETWEEN 40 AND 64)
  222.                                                           AND "mv_stat_lvl_1_patients"."legal_entity_id" = 3228),
  223.                                          "diagnoses" AS (SELECT "mv_stat_lvl_1_reception_conditions".*
  224.                                                          FROM "mv_stat_lvl_1_reception_conditions"
  225.                                                          WHERE "mv_stat_lvl_1_reception_conditions"."asserted_date" BETWEEN '2024-01-01 00:00:00' AND '2024-03-04 23:59:59.999999'
  226.                                                            AND "mv_stat_lvl_1_reception_conditions"."legal_entity_id" = 3228),
  227.                                          "reasons" AS (SELECT "mv_stat_lvl_1_ehr_reasons".*
  228.                                                        FROM "mv_stat_lvl_1_ehr_reasons"
  229.                                                        WHERE "mv_stat_lvl_1_ehr_reasons"."code" = 'A98'
  230.                                                          AND "mv_stat_lvl_1_ehr_reasons"."asserted_date" BETWEEN '2024-01-01 00:00:00' AND '2024-03-04 23:59:59.999999'
  231.                                                          AND "mv_stat_lvl_1_ehr_reasons"."legal_entity_id" = 3228),
  232.                                          "diagnoses_c1_counter"
  233.                                              AS (SELECT diagnoses.patient_id, COUNT(DISTINCT diagnoses.code) AS counter
  234.                                                  FROM diagnoses
  235.                                                  GROUP BY "diagnoses"."patient_id"
  236.                                                  HAVING (COUNT(DISTINCT diagnoses.code) > 0)),
  237.                                          "observations" AS (SELECT "mv_stat_lvl_1_ehr_observations".*
  238.                                                             FROM "mv_stat_lvl_1_ehr_observations"
  239.                                                             WHERE "mv_stat_lvl_1_ehr_observations"."legal_entity_id" = 3228
  240.                                                               AND "mv_stat_lvl_1_ehr_observations"."code" IN
  241.                                                                   ('39156-5', '14743-9', '8462-4', '8480-6', '56086-2',
  242.                                                                    '4548-4')
  243.                                                               AND "mv_stat_lvl_1_ehr_observations"."asserted_date" BETWEEN '2024-01-01 00:00:00' AND '2024-03-04 23:59:59.999999'),
  244.                                          "reports" AS (SELECT mv_stat_lvl_0_ehr_diagnostic_reports.id,
  245.                                                               mv_stat_lvl_0_ehr_diagnostic_reports.asserted_date,
  246.                                                               mv_stat_lvl_0_ehr_diagnostic_reports.code,
  247.                                                               mv_stat_lvl_0_ehr_diagnostic_reports.item_type,
  248.                                                               mv_stat_lvl_0_ehr_diagnostic_reports.status::varchar,
  249.                                                               mv_stat_lvl_0_ehr_diagnostic_reports.title,
  250.                                                               mv_stat_lvl_0_ehr_diagnostic_reports.employee_id,
  251.                                                               mv_stat_lvl_0_ehr_diagnostic_reports.legal_entity_id,
  252.                                                               mv_stat_lvl_0_ehr_diagnostic_reports.patient_id
  253.                                                        FROM "mv_stat_lvl_0_ehr_diagnostic_reports"
  254.                                                        WHERE "mv_stat_lvl_0_ehr_diagnostic_reports"."code" IN
  255.                                                              ('T34001', 'T34006', 'T34024', 'T34011', 'T34013')
  256.                                                          AND "mv_stat_lvl_0_ehr_diagnostic_reports"."legal_entity_id" = 3228
  257.                                                          AND "mv_stat_lvl_0_ehr_diagnostic_reports"."asserted_date" BETWEEN '2024-01-01 00:00:00' AND '2024-03-04 23:59:59.999999'),
  258.                                          "observations_c1_counter" AS (SELECT observations.patient_id,
  259.                                                                               COUNT(DISTINCT observations.code) AS counter
  260.                                                                        FROM observations
  261.                                                                        WHERE "observations"."code" IN
  262.                                                                              ('39156-5', '14743-9', '8462-4', '8480-6',
  263.                                                                               '56086-2')
  264.                                                                        GROUP BY "observations"."patient_id"
  265.                                                                        HAVING (COUNT(DISTINCT observations.code) >= 4))
  266.                                     SELECT COALESCE(COUNT(DISTINCT mv_stat_lvl_1_declarations.id), 0) as counter,
  267.                                            mv_stat_lvl_1_declarations.employee_id                     as employee_id
  268.                                     FROM "mv_stat_lvl_1_declarations"
  269.                                              INNER JOIN "mv_stat_lvl_1_patients" ON "mv_stat_lvl_1_patients"."id" =
  270.                                                                                     "mv_stat_lvl_1_declarations"."patient_id"
  271.                                              LEFT JOIN diagnoses ON mv_stat_lvl_1_declarations.patient_id =
  272.                                                                     diagnoses.patient_id AND diagnoses.code = 'A98'
  273.                                              JOIN patients ON mv_stat_lvl_1_declarations.id = patients.declaration_id
  274.                                              JOIN diagnoses_c1_counter ON mv_stat_lvl_1_declarations.patient_id =
  275.                                                                           diagnoses_c1_counter.patient_id AND
  276.                                                                           diagnoses_c1_counter.counter > 0
  277.                                              LEFT JOIN reasons ON reasons.patient_id = mv_stat_lvl_1_declarations.patient_id
  278.                                              JOIN reports ON reports.patient_id = mv_stat_lvl_1_declarations.patient_id
  279.                                              LEFT JOIN observations_c1_counter ON observations_c1_counter.patient_id =
  280.                                                                                   mv_stat_lvl_1_declarations.patient_id
  281.                                     WHERE "mv_stat_lvl_1_declarations"."legal_entity_id" = 3228
  282.                                       AND ((diagnoses.code = 'A98' OR reasons.code = 'A98') AND
  283.                                            (diagnoses_c1_counter.counter > 0 AND observations_c1_counter.counter > 0))
  284.                                     GROUP BY "mv_stat_lvl_1_declarations"."employee_id"),
  285.      "visits_upper_65_cnt" AS (WITH "patients" AS (SELECT "mv_stat_lvl_1_patients".*
  286.                                                    FROM "mv_stat_lvl_1_patients"
  287.                                                    WHERE (DATE_PART('YEAR',
  288.                                                                     AGE('2024-03-04 23:59:59.999999', mv_stat_lvl_1_patients.birth_date)) BETWEEN 65 AND 999)
  289.                                                      AND "mv_stat_lvl_1_patients"."legal_entity_id" = 3228),
  290.                                     "diagnoses" AS (SELECT "mv_stat_lvl_1_reception_conditions".*
  291.                                                     FROM "mv_stat_lvl_1_reception_conditions"
  292.                                                     WHERE "mv_stat_lvl_1_reception_conditions"."code" IN
  293.                                                           ('K86', 'K87', 'K76', 'K74', 'T89', 'T90', 'A98')
  294.                                                       AND "mv_stat_lvl_1_reception_conditions"."asserted_date" BETWEEN '2024-01-01 00:00:00' AND '2024-03-04 23:59:59.999999'
  295.                                                       AND "mv_stat_lvl_1_reception_conditions"."legal_entity_id" = 3228),
  296.                                     "reasons" AS (SELECT "mv_stat_lvl_1_ehr_reasons".*
  297.                                                   FROM "mv_stat_lvl_1_ehr_reasons"
  298.                                                   WHERE "mv_stat_lvl_1_ehr_reasons"."code" = 'A98'
  299.                                                     AND "mv_stat_lvl_1_ehr_reasons"."asserted_date" BETWEEN '2024-01-01 00:00:00' AND '2024-03-04 23:59:59.999999'
  300.                                                     AND "mv_stat_lvl_1_ehr_reasons"."legal_entity_id" = 3228),
  301.                                     "observations" AS (SELECT "mv_stat_lvl_1_ehr_observations".*
  302.                                                        FROM "mv_stat_lvl_1_ehr_observations"
  303.                                                        WHERE "mv_stat_lvl_1_ehr_observations"."legal_entity_id" = 3228
  304.                                                          AND "mv_stat_lvl_1_ehr_observations"."code" IN
  305.                                                              ('39156-5', '14743-9', '8462-4', '8480-6', '56086-2',
  306.                                                               '4548-4')
  307.                                                          AND "mv_stat_lvl_1_ehr_observations"."asserted_date" BETWEEN '2024-01-01 00:00:00' AND '2024-03-04 23:59:59.999999'),
  308.                                     "actions" AS (SELECT "mv_stat_lvl_1_ehr_actions".*
  309.                                                   FROM "mv_stat_lvl_1_ehr_actions"
  310.                                                   WHERE "mv_stat_lvl_1_ehr_actions"."code" IN ('K45', 'D45', 'T45')
  311.                                                     AND "mv_stat_lvl_1_ehr_actions"."legal_entity_id" = 3228
  312.                                                     AND "mv_stat_lvl_1_ehr_actions"."asserted_date" BETWEEN '2024-01-01 00:00:00' AND '2024-03-04 23:59:59.999999'),
  313.                                     "reports" AS (SELECT mv_stat_lvl_0_ehr_diagnostic_reports.id,
  314.                                                          mv_stat_lvl_0_ehr_diagnostic_reports.asserted_date,
  315.                                                          mv_stat_lvl_0_ehr_diagnostic_reports.code,
  316.                                                          mv_stat_lvl_0_ehr_diagnostic_reports.item_type,
  317.                                                          mv_stat_lvl_0_ehr_diagnostic_reports.status::varchar,
  318.                                                          mv_stat_lvl_0_ehr_diagnostic_reports.title,
  319.                                                          mv_stat_lvl_0_ehr_diagnostic_reports.employee_id,
  320.                                                          mv_stat_lvl_0_ehr_diagnostic_reports.legal_entity_id,
  321.                                                          mv_stat_lvl_0_ehr_diagnostic_reports.patient_id
  322.                                                   FROM "mv_stat_lvl_0_ehr_diagnostic_reports"
  323.                                                   WHERE "mv_stat_lvl_0_ehr_diagnostic_reports"."code" IN
  324.                                                         ('T34001', 'T34006', 'T34024', 'T34011', 'T34013')
  325.                                                     AND "mv_stat_lvl_0_ehr_diagnostic_reports"."legal_entity_id" = 3228
  326.                                                     AND "mv_stat_lvl_0_ehr_diagnostic_reports"."asserted_date" BETWEEN '2024-01-01 00:00:00' AND '2024-03-04 23:59:59.999999'),
  327.                                     "diagnoses_c1_counter"
  328.                                         AS (SELECT diagnoses.patient_id, COUNT(DISTINCT diagnoses.code) AS counter
  329.                                             FROM diagnoses
  330.                                             WHERE "diagnoses"."code" IN ('K86', 'K87')
  331.                                             GROUP BY "diagnoses"."patient_id"
  332.                                             HAVING (COUNT(DISTINCT diagnoses.code) > 0)),
  333.                                     "diagnoses_c2_counter"
  334.                                         AS (SELECT diagnoses.patient_id, COUNT(DISTINCT diagnoses.code) AS counter
  335.                                             FROM diagnoses
  336.                                             WHERE "diagnoses"."code" IN ('K76', 'K74')
  337.                                             GROUP BY "diagnoses"."patient_id"
  338.                                             HAVING (COUNT(DISTINCT diagnoses.code) > 0)),
  339.                                     "diagnoses_c3_counter"
  340.                                         AS (SELECT diagnoses.patient_id, COUNT(DISTINCT diagnoses.code) AS counter
  341.                                             FROM diagnoses
  342.                                             WHERE "diagnoses"."code" IN ('T89', 'T90')
  343.                                             GROUP BY "diagnoses"."patient_id"
  344.                                             HAVING (COUNT(DISTINCT diagnoses.code) > 0)),
  345.                                     "observations_c1_counter" AS (SELECT observations.patient_id,
  346.                                                                          COUNT(DISTINCT observations.code) AS counter
  347.                                                                   FROM observations
  348.                                                                   WHERE "observations"."code" IN ('39156-5', '14743-9', '8462-4', '8480-6')
  349.                                                                   GROUP BY "observations"."patient_id"
  350.                                                                   HAVING (COUNT(DISTINCT observations.code) >= 4)),
  351.                                     "observations_c2_counter" AS (SELECT observations.patient_id,
  352.                                                                          COUNT(DISTINCT observations.code) AS counter
  353.                                                                   FROM observations
  354.                                                                   WHERE "observations"."code" IN
  355.                                                                         ('39156-5', '14743-9', '8462-4', '8480-6',
  356.                                                                          '56086-2')
  357.                                                                   GROUP BY "observations"."patient_id"
  358.                                                                   HAVING (COUNT(DISTINCT observations.code) >= 5))
  359.                                SELECT COALESCE(COUNT(DISTINCT mv_stat_lvl_1_declarations.id), 0) as counter,
  360.                                       mv_stat_lvl_1_declarations.employee_id                     as employee_id
  361.                                FROM "mv_stat_lvl_1_declarations"
  362.                                         INNER JOIN "mv_stat_lvl_1_patients" ON "mv_stat_lvl_1_patients"."id" =
  363.                                                                                "mv_stat_lvl_1_declarations"."patient_id"
  364.                                         INNER JOIN diagnoses
  365.                                                    ON mv_stat_lvl_1_declarations.patient_id = diagnoses.patient_id
  366.                                         JOIN patients ON mv_stat_lvl_1_declarations.id = patients.declaration_id
  367.                                         LEFT JOIN diagnoses_c1_counter
  368.                                                   ON mv_stat_lvl_1_declarations.patient_id = diagnoses_c1_counter.patient_id
  369.                                         LEFT JOIN diagnoses_c2_counter
  370.                                                   ON mv_stat_lvl_1_declarations.patient_id = diagnoses_c2_counter.patient_id
  371.                                         LEFT JOIN diagnoses_c3_counter
  372.                                                   ON mv_stat_lvl_1_declarations.patient_id = diagnoses_c3_counter.patient_id
  373.                                         LEFT JOIN reasons ON reasons.patient_id = mv_stat_lvl_1_declarations.patient_id
  374.                                         JOIN actions ON actions.patient_id = mv_stat_lvl_1_declarations.patient_id
  375.                                         JOIN reports ON reports.patient_id = mv_stat_lvl_1_declarations.patient_id
  376.                                         LEFT JOIN observations_c1_counter ON observations_c1_counter.patient_id =
  377.                                                                              mv_stat_lvl_1_declarations.patient_id
  378.                                         LEFT JOIN observations_c2_counter ON observations_c2_counter.patient_id =
  379.                                                                              mv_stat_lvl_1_declarations.patient_id
  380.                                WHERE "mv_stat_lvl_1_declarations"."legal_entity_id" = 3228
  381.                                  AND ((diagnoses.code = 'A98' OR reasons.code = 'A98') AND
  382.                                       (((diagnoses_c1_counter.counter > 0 OR diagnoses_c2_counter.counter > 0) AND
  383.                                         observations_c1_counter.counter > 0) OR
  384.                                        (diagnoses_c3_counter.counter > 0 AND observations_c2_counter.counter > 0)))
  385.                                GROUP BY "mv_stat_lvl_1_declarations"."employee_id")
  386. SELECT COALESCE(MAX(hypertension_cnt.counter), 0)         as hypertension_counter,
  387.        COALESCE(MAX(diabetes_cnt.counter), 0)             as diabetes_counter,
  388.        COALESCE(MAX(prostate_cancer_cnt.counter), 0)      as prostate_cancer_counter,
  389.        COALESCE(MAX(breast_cancer_cnt.counter), 0)        as breast_cancer_counter,
  390.        COALESCE(MAX(colorectal_cancer_cnt.counter), 0)    as colorectal_cancer_counter,
  391.        COALESCE(MAX(hiv_cnt.counter), 0)                  as hiv_counter,
  392.        COALESCE(MAX(visits_from_40_to_64_cnt.counter), 0) as visits_from_40_to_64_counter,
  393.        COALESCE(MAX(visits_upper_65_cnt.counter), 0)      as visits_upper_65_counter,
  394.        mv_stat_lvl_0_employees.position_ref_id,
  395.        mv_stat_lvl_0_employees.full_name,
  396.        mv_stat_lvl_0_employees.id
  397. FROM "mv_stat_lvl_0_employees"
  398.          LEFT JOIN hypertension_cnt ON mv_stat_lvl_0_employees.id = hypertension_cnt.employee_id
  399.          LEFT JOIN diabetes_cnt ON mv_stat_lvl_0_employees.id = diabetes_cnt.employee_id
  400.          LEFT JOIN prostate_cancer_cnt ON mv_stat_lvl_0_employees.id = prostate_cancer_cnt.employee_id
  401.          LEFT JOIN breast_cancer_cnt ON mv_stat_lvl_0_employees.id = breast_cancer_cnt.employee_id
  402.          LEFT JOIN colorectal_cancer_cnt ON mv_stat_lvl_0_employees.id = colorectal_cancer_cnt.employee_id
  403.          LEFT JOIN hiv_cnt ON mv_stat_lvl_0_employees.id = hiv_cnt.employee_id
  404.          LEFT JOIN visits_from_40_to_64_cnt ON mv_stat_lvl_0_employees.id = visits_from_40_to_64_cnt.employee_id
  405.          LEFT JOIN visits_upper_65_cnt ON mv_stat_lvl_0_employees.id = visits_from_40_to_64_cnt.employee_id
  406. WHERE "mv_stat_lvl_0_employees"."employee_type_ref_value" = 'DOCTOR'
  407.   AND "mv_stat_lvl_0_employees"."legal_entity_id" = 3228
  408. GROUP BY mv_stat_lvl_0_employees.id, mv_stat_lvl_0_employees.position_ref_id, mv_stat_lvl_0_employees.full_name
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement