Advertisement
temaon_lieto

Employees

Mar 8th, 2024
101
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. EXPLAIN ANALYSE
  2. WITH "items" AS (SELECT "mv_stat_lvl_0_ehr_service_requests".*
  3.                  FROM ((SELECT "mv_stat_lvl_0_ehr_service_requests".*
  4.                         FROM ((SELECT "mv_stat_lvl_0_ehr_service_requests".*
  5.                                FROM ((SELECT mv_stat_lvl_0_ehr_service_requests.id,
  6.                                              mv_stat_lvl_0_ehr_service_requests.asserted_date,
  7.                                              mv_stat_lvl_0_ehr_service_requests.code,
  8.                                              mv_stat_lvl_0_ehr_service_requests.item_type,
  9.                                              mv_stat_lvl_0_ehr_service_requests.status::varchar,
  10.                                              mv_stat_lvl_0_ehr_service_requests.title,
  11.                                              mv_stat_lvl_0_ehr_service_requests.employee_id,
  12.                                              mv_stat_lvl_0_ehr_service_requests.legal_entity_id,
  13.                                              mv_stat_lvl_0_ehr_service_requests.patient_id
  14.                                       FROM "mv_stat_lvl_0_ehr_service_requests"
  15.                                       WHERE "mv_stat_lvl_0_ehr_service_requests"."asserted_date" BETWEEN '2024-01-01 00:00:00' AND '2024-03-08 23:59:59.999999'
  16.                                         AND "mv_stat_lvl_0_ehr_service_requests"."legal_entity_id" = 3228)
  17.                                      UNION
  18.                                      (SELECT mv_stat_lvl_0_ehr_diagnostic_reports.id,
  19.                                              mv_stat_lvl_0_ehr_diagnostic_reports.asserted_date,
  20.                                              mv_stat_lvl_0_ehr_diagnostic_reports.code,
  21.                                              mv_stat_lvl_0_ehr_diagnostic_reports.item_type,
  22.                                              mv_stat_lvl_0_ehr_diagnostic_reports.status::varchar,
  23.                                              mv_stat_lvl_0_ehr_diagnostic_reports.title,
  24.                                              mv_stat_lvl_0_ehr_diagnostic_reports.employee_id,
  25.                                              mv_stat_lvl_0_ehr_diagnostic_reports.legal_entity_id,
  26.                                              mv_stat_lvl_0_ehr_diagnostic_reports.patient_id
  27.                                       FROM "mv_stat_lvl_0_ehr_diagnostic_reports"
  28.                                       WHERE "mv_stat_lvl_0_ehr_diagnostic_reports"."asserted_date" BETWEEN '2024-01-01 00:00:00' AND '2024-03-08 23:59:59.999999'
  29.                                         AND "mv_stat_lvl_0_ehr_diagnostic_reports"."legal_entity_id" = 3228)) "mv_stat_lvl_0_ehr_service_requests")
  30.                               UNION
  31.                               (SELECT mv_stat_lvl_1_ehr_observations.id,
  32.                                       mv_stat_lvl_1_ehr_observations.asserted_date,
  33.                                       mv_stat_lvl_1_ehr_observations.code,
  34.                                       1                as item_type,
  35.                                       'final'::varchar as status,
  36.                                       mv_stat_lvl_1_ehr_observations.title,
  37.                                       mv_stat_lvl_1_ehr_observations.employee_id,
  38.                                       mv_stat_lvl_1_ehr_observations.legal_entity_id,
  39.                                       mv_stat_lvl_1_ehr_observations.patient_id
  40.                                FROM "mv_stat_lvl_1_ehr_observations"
  41.                                WHERE "mv_stat_lvl_1_ehr_observations"."asserted_date" BETWEEN '2024-01-01 00:00:00' AND '2024-03-08 23:59:59.999999'
  42.                                  AND "mv_stat_lvl_1_ehr_observations"."legal_entity_id" = 3228)) "mv_stat_lvl_0_ehr_service_requests")
  43.                        UNION
  44.                        (SELECT mv_stat_lvl_0_ehr_diagnostic_reports.id,
  45.                                mv_stat_lvl_0_ehr_diagnostic_reports.asserted_date,
  46.                                mv_stat_lvl_0_ehr_diagnostic_reports.code,
  47.                                mv_stat_lvl_0_ehr_diagnostic_reports.item_type,
  48.                                mv_stat_lvl_0_ehr_diagnostic_reports.status::varchar,
  49.                                mv_stat_lvl_0_ehr_diagnostic_reports.title,
  50.                                mv_stat_lvl_0_ehr_diagnostic_reports.employee_id,
  51.                                mv_stat_lvl_0_ehr_diagnostic_reports.legal_entity_id,
  52.                                mv_stat_lvl_0_ehr_diagnostic_reports.patient_id
  53.                         FROM "mv_stat_lvl_0_ehr_diagnostic_reports"
  54.                         WHERE "mv_stat_lvl_0_ehr_diagnostic_reports"."asserted_date" BETWEEN '2024-01-01 00:00:00' AND '2024-03-08 23:59:59.999999'
  55.                           AND "mv_stat_lvl_0_ehr_diagnostic_reports"."legal_entity_id" = 3228)) "mv_stat_lvl_0_ehr_service_requests"),
  56.      "diagnoses" AS (SELECT "mv_stat_lvl_1_reception_conditions".*
  57.                      FROM "mv_stat_lvl_1_reception_conditions"
  58.                      WHERE "mv_stat_lvl_1_reception_conditions"."asserted_date" BETWEEN '2024-01-01 00:00:00' AND '2024-03-08 23:59:59.999999'
  59.                        AND "mv_stat_lvl_1_reception_conditions"."legal_entity_id" = 3228),
  60.      "specific_diagnoses" AS (SELECT "mv_stat_lvl_1_reception_conditions".*
  61.                               FROM "mv_stat_lvl_1_reception_conditions"
  62.                               WHERE "mv_stat_lvl_1_reception_conditions"."asserted_date" BETWEEN '2024-01-01 00:00:00' AND '2024-03-08 23:59:59.999999'
  63.                                 AND "mv_stat_lvl_1_reception_conditions"."legal_entity_id" = 3228
  64.                                 AND "mv_stat_lvl_1_reception_conditions"."code" IN
  65.                                     ('K86', 'K87', 'K76', 'K74', 'T89', 'T90', 'A98')),
  66.      "reasons" AS (SELECT "mv_stat_lvl_1_ehr_reasons".*
  67.                    FROM "mv_stat_lvl_1_ehr_reasons"
  68.                    WHERE "mv_stat_lvl_1_ehr_reasons"."code" = 'A98'
  69.                      AND "mv_stat_lvl_1_ehr_reasons"."asserted_date" BETWEEN '2024-01-01 00:00:00' AND '2024-03-08 23:59:59.999999'
  70.                      AND "mv_stat_lvl_1_ehr_reasons"."legal_entity_id" = 3228),
  71.      "actions" AS (SELECT "mv_stat_lvl_1_ehr_actions".*
  72.                    FROM "mv_stat_lvl_1_ehr_actions"
  73.                    WHERE "mv_stat_lvl_1_ehr_actions"."code" IN ('K45', 'D45', 'T45')
  74.                      AND "mv_stat_lvl_1_ehr_actions"."legal_entity_id" = 3228
  75.                      AND "mv_stat_lvl_1_ehr_actions"."asserted_date" BETWEEN '2024-01-01 00:00:00' AND '2024-03-08 23:59:59.999999'),
  76.      "observations" AS (SELECT "mv_stat_lvl_1_ehr_observations".*
  77.                         FROM "mv_stat_lvl_1_ehr_observations"
  78.                         WHERE "mv_stat_lvl_1_ehr_observations"."legal_entity_id" = 3228
  79.                           AND "mv_stat_lvl_1_ehr_observations"."code" IN
  80.                               ('39156-5', '14743-9', '8462-4', '8480-6', '56086-2', '4548-4')
  81.                           AND "mv_stat_lvl_1_ehr_observations"."asserted_date" BETWEEN '2024-01-01 00:00:00' AND '2024-03-08 23:59:59.999999'),
  82.      "reports" AS (SELECT mv_stat_lvl_0_ehr_diagnostic_reports.id,
  83.                           mv_stat_lvl_0_ehr_diagnostic_reports.asserted_date,
  84.                           mv_stat_lvl_0_ehr_diagnostic_reports.code,
  85.                           mv_stat_lvl_0_ehr_diagnostic_reports.item_type,
  86.                           mv_stat_lvl_0_ehr_diagnostic_reports.status::varchar,
  87.                           mv_stat_lvl_0_ehr_diagnostic_reports.title,
  88.                           mv_stat_lvl_0_ehr_diagnostic_reports.employee_id,
  89.                           mv_stat_lvl_0_ehr_diagnostic_reports.legal_entity_id,
  90.                           mv_stat_lvl_0_ehr_diagnostic_reports.patient_id
  91.                    FROM "mv_stat_lvl_0_ehr_diagnostic_reports"
  92.                    WHERE "mv_stat_lvl_0_ehr_diagnostic_reports"."code" IN
  93.                          ('T34001', 'T34006', 'T34024', 'T34011', 'T34013')
  94.                      AND "mv_stat_lvl_0_ehr_diagnostic_reports"."legal_entity_id" = 3228
  95.                      AND "mv_stat_lvl_0_ehr_diagnostic_reports"."asserted_date" BETWEEN '2024-01-01 00:00:00' AND '2024-03-08 23:59:59.999999'),
  96.      "hypertension_cnt" AS (SELECT COALESCE(COUNT(DISTINCT mv_stat_lvl_1_declarations.id), 0) as counter,
  97.                                    mv_stat_lvl_1_declarations.employee_id                     as employee_id
  98.                             FROM "mv_stat_lvl_1_declarations"
  99.                                      JOIN mv_stat_lvl_1_patients ON mv_stat_lvl_1_patients.legal_entity_id =
  100.                                                                     mv_stat_lvl_1_declarations.legal_entity_id AND
  101.                                                                     mv_stat_lvl_1_patients.id =
  102.                                                                     mv_stat_lvl_1_declarations.patient_id
  103.                                      JOIN items
  104.                                           ON items.legal_entity_id = mv_stat_lvl_1_declarations.legal_entity_id AND
  105.                                              items.patient_id = mv_stat_lvl_1_declarations.patient_id
  106.                             WHERE "items"."code" IN ('T34006', 'T34011', 'T34013', 'T34024', 'T34001', 'T34004')
  107.                               AND "mv_stat_lvl_1_patients"."legal_entity_id" = 3228
  108.                               AND ("mv_stat_lvl_1_patients"."gender" = 0 AND (DATE_PART('YEAR',
  109.                                                                                         AGE('2024-03-08 23:59:59.999999', mv_stat_lvl_1_patients.birth_date)) BETWEEN 50 AND 999) OR
  110.                                    "mv_stat_lvl_1_patients"."gender" = 1 AND (DATE_PART('YEAR',
  111.                                                                                         AGE('2024-03-08 23:59:59.999999', mv_stat_lvl_1_patients.birth_date)) BETWEEN 40 AND 999))
  112.                               AND "items"."asserted_date" BETWEEN '2024-01-01 00:00:00' AND '2024-03-08 23:59:59.999999'
  113.                             GROUP BY "mv_stat_lvl_1_declarations"."employee_id"),
  114.      "diabetes_cnt" AS (SELECT COALESCE(COUNT(DISTINCT mv_stat_lvl_1_declarations.id), 0) as counter,
  115.                                mv_stat_lvl_1_declarations.employee_id                     as employee_id
  116.                         FROM "mv_stat_lvl_1_declarations"
  117.                                  JOIN mv_stat_lvl_1_patients ON mv_stat_lvl_1_patients.legal_entity_id =
  118.                                                                 mv_stat_lvl_1_declarations.legal_entity_id AND
  119.                                                                 mv_stat_lvl_1_patients.id =
  120.                                                                 mv_stat_lvl_1_declarations.patient_id
  121.                                  JOIN items ON items.legal_entity_id = mv_stat_lvl_1_declarations.legal_entity_id AND
  122.                                                items.patient_id = mv_stat_lvl_1_declarations.patient_id
  123.                         WHERE "items"."code" IN ('T34005', 'T34023', 'T34025', 'T34038', '14743-9')
  124.                           AND (DATE_PART('YEAR',
  125.                                          AGE('2024-03-08 23:59:59.999999', mv_stat_lvl_1_patients.birth_date)) BETWEEN 45 AND 999)
  126.                           AND "mv_stat_lvl_1_patients"."legal_entity_id" = 3228
  127.                           AND "items"."asserted_date" BETWEEN '2024-01-01 00:00:00' AND '2024-03-08 23:59:59.999999'
  128.                         GROUP BY "mv_stat_lvl_1_declarations"."employee_id"),
  129.      "prostate_cancer_cnt" AS (SELECT COALESCE(COUNT(DISTINCT mv_stat_lvl_1_declarations.id), 0) as counter,
  130.                                       mv_stat_lvl_1_declarations.employee_id                     as employee_id
  131.                                FROM "mv_stat_lvl_1_declarations"
  132.                                         JOIN mv_stat_lvl_1_patients ON mv_stat_lvl_1_patients.legal_entity_id =
  133.                                                                        mv_stat_lvl_1_declarations.legal_entity_id AND
  134.                                                                        mv_stat_lvl_1_patients.id =
  135.                                                                        mv_stat_lvl_1_declarations.patient_id
  136.                                         JOIN items
  137.                                              ON items.legal_entity_id = mv_stat_lvl_1_declarations.legal_entity_id AND
  138.                                                 items.patient_id = mv_stat_lvl_1_declarations.patient_id
  139.                                WHERE "items"."code" IN ('U67002', 'Y34011', 'Y34003')
  140.                                  AND "mv_stat_lvl_1_patients"."gender" = 0
  141.                                  AND (DATE_PART('YEAR',
  142.                                                 AGE('2024-03-08 23:59:59.999999', mv_stat_lvl_1_patients.birth_date)) BETWEEN 40 AND 999)
  143.                                  AND "mv_stat_lvl_1_patients"."legal_entity_id" = 3228
  144.                                  AND "items"."asserted_date" BETWEEN '2024-01-01 00:00:00' AND '2024-03-08 23:59:59.999999'
  145.                                GROUP BY "mv_stat_lvl_1_declarations"."employee_id"),
  146.      "breast_cancer_cnt" AS (SELECT COALESCE(COUNT(DISTINCT mv_stat_lvl_1_declarations.id), 0) as counter,
  147.                                     mv_stat_lvl_1_declarations.employee_id                     as employee_id
  148.                              FROM "mv_stat_lvl_1_declarations"
  149.                                       JOIN mv_stat_lvl_1_patients ON mv_stat_lvl_1_patients.legal_entity_id =
  150.                                                                      mv_stat_lvl_1_declarations.legal_entity_id AND
  151.                                                                      mv_stat_lvl_1_patients.id =
  152.                                                                      mv_stat_lvl_1_declarations.patient_id
  153.                                       JOIN items
  154.                                            ON items.legal_entity_id = mv_stat_lvl_1_declarations.legal_entity_id AND
  155.                                               items.patient_id = mv_stat_lvl_1_declarations.patient_id
  156.                              WHERE "items"."code" IN ('Х41941', 'X41973', '59300-00', '55070-00', '55076-00')
  157.                                AND "mv_stat_lvl_1_patients"."gender" = 1
  158.                                AND (DATE_PART('YEAR',
  159.                                               AGE('2024-03-08 23:59:59.999999', mv_stat_lvl_1_patients.birth_date)) BETWEEN 50 AND 69)
  160.                                AND "mv_stat_lvl_1_patients"."legal_entity_id" = 3228
  161.                                AND "items"."asserted_date" BETWEEN '2024-01-01 00:00:00' AND '2024-03-08 23:59:59.999999'
  162.                              GROUP BY "mv_stat_lvl_1_declarations"."employee_id"),
  163.      "colorectal_cancer_cnt" AS (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.                                           JOIN mv_stat_lvl_1_patients ON mv_stat_lvl_1_patients.legal_entity_id =
  167.                                                                          mv_stat_lvl_1_declarations.legal_entity_id AND
  168.                                                                          mv_stat_lvl_1_patients.id =
  169.                                                                          mv_stat_lvl_1_declarations.patient_id
  170.                                           JOIN items
  171.                                                ON items.legal_entity_id = mv_stat_lvl_1_declarations.legal_entity_id AND
  172.                                                   items.patient_id = mv_stat_lvl_1_declarations.patient_id
  173.                                  WHERE "items"."code" IN
  174.                                        ('D36003', 'D67006', '32084-00', '32090-00', '32084-02', '32090-02')
  175.                                    AND "mv_stat_lvl_1_patients"."gender" = 0
  176.                                    AND (DATE_PART('YEAR',
  177.                                                   AGE('2024-03-08 23:59:59.999999', mv_stat_lvl_1_patients.birth_date)) BETWEEN 50 AND 75)
  178.                                    AND "mv_stat_lvl_1_patients"."legal_entity_id" = 3228
  179.                                    AND "items"."asserted_date" BETWEEN '2024-01-01 00:00:00' AND '2024-03-08 23:59:59.999999'
  180.                                  GROUP BY "mv_stat_lvl_1_declarations"."employee_id"),
  181.      "hiv_cnt" AS (SELECT COALESCE(COUNT(DISTINCT mv_stat_lvl_1_declarations.id), 0) as counter,
  182.                           mv_stat_lvl_1_declarations.employee_id                     as employee_id
  183.                    FROM "mv_stat_lvl_1_declarations"
  184.                             JOIN mv_stat_lvl_1_patients ON mv_stat_lvl_1_patients.legal_entity_id =
  185.                                                            mv_stat_lvl_1_declarations.legal_entity_id AND
  186.                                                            mv_stat_lvl_1_patients.id =
  187.                                                            mv_stat_lvl_1_declarations.patient_id
  188.                             JOIN items ON items.legal_entity_id = mv_stat_lvl_1_declarations.legal_entity_id AND
  189.                                           items.patient_id = mv_stat_lvl_1_declarations.patient_id
  190.                    WHERE "items"."code" IN ('B33006', 'B33012')
  191.                      AND (DATE_PART('YEAR',
  192.                                     AGE('2024-03-08 23:59:59.999999', mv_stat_lvl_1_patients.birth_date)) BETWEEN 14 AND 999)
  193.                      AND "mv_stat_lvl_1_patients"."legal_entity_id" = 3228
  194.                      AND "items"."asserted_date" BETWEEN '2024-01-01 00:00:00' AND '2024-03-08 23:59:59.999999'
  195.                    GROUP BY "mv_stat_lvl_1_declarations"."employee_id"),
  196.      "diagnoses_c1_64_counter" AS (SELECT diagnoses.patient_id, COUNT(DISTINCT diagnoses.code) AS counter
  197.                                    FROM diagnoses
  198.                                    GROUP BY "diagnoses"."patient_id"
  199.                                    HAVING (COUNT(DISTINCT diagnoses.code) > 0)),
  200.      "observations_c1_64_counter" AS (SELECT observations.patient_id, COUNT(DISTINCT observations.code) AS counter
  201.                                       FROM observations
  202.                                       GROUP BY "observations"."patient_id"
  203.                                       HAVING (COUNT(DISTINCT observations.code) >= 1)),
  204.      "diagnoses_c1_65_counter" AS (SELECT diagnoses.patient_id, COUNT(DISTINCT diagnoses.code) AS counter
  205.                                    FROM diagnoses
  206.                                    WHERE "diagnoses"."code" IN ('K86', 'K87')
  207.                                    GROUP BY "diagnoses"."patient_id"
  208.                                    HAVING (COUNT(DISTINCT diagnoses.code) > 0)),
  209.      "diagnoses_c2_65_counter" AS (SELECT diagnoses.patient_id, COUNT(DISTINCT diagnoses.code) AS counter
  210.                                    FROM diagnoses
  211.                                    WHERE "diagnoses"."code" IN ('K76', 'K74')
  212.                                    GROUP BY "diagnoses"."patient_id"
  213.                                    HAVING (COUNT(DISTINCT diagnoses.code) > 0)),
  214.      "diagnoses_c3_65_counter" AS (SELECT diagnoses.patient_id, COUNT(DISTINCT diagnoses.code) AS counter
  215.                                    FROM diagnoses
  216.                                    WHERE "diagnoses"."code" IN ('T89', 'T90')
  217.                                    GROUP BY "diagnoses"."patient_id"
  218.                                    HAVING (COUNT(DISTINCT diagnoses.code) > 0)),
  219.      "observations_c1_65_counter" AS (SELECT observations.patient_id, COUNT(DISTINCT observations.code) AS counter
  220.                                       FROM observations
  221.                                       WHERE "observations"."code" IN ('39156-5', '14743-9', '8462-4', '8480-6')
  222.                                       GROUP BY "observations"."patient_id"
  223.                                       HAVING (COUNT(DISTINCT observations.code) >= 4)),
  224.      "observations_c2_65_counter" AS (SELECT observations.patient_id, COUNT(DISTINCT observations.code) AS counter
  225.                                       FROM observations
  226.                                       WHERE "observations"."code" IN
  227.                                             ('39156-5', '14743-9', '8462-4', '8480-6', '56086-2')
  228.                                       GROUP BY "observations"."patient_id"
  229.                                       HAVING (COUNT(DISTINCT observations.code) >= 5)),
  230.      "visits_from_40_to_64_cnt" AS (SELECT COALESCE(COUNT(DISTINCT mv_stat_lvl_1_declarations.id), 0) as counter,
  231.                                            mv_stat_lvl_1_declarations.employee_id                     as employee_id
  232.                                     FROM "mv_stat_lvl_1_declarations"
  233.                                              JOIN mv_stat_lvl_1_patients ON mv_stat_lvl_1_patients.legal_entity_id =
  234.                                                                             mv_stat_lvl_1_declarations.legal_entity_id AND
  235.                                                                             mv_stat_lvl_1_patients.id =
  236.                                                                             mv_stat_lvl_1_declarations.patient_id AND
  237.                                                                             (DATE_PART('YEAR',
  238.                                                                                        AGE('2024-03-08 23:59:59.999999', mv_stat_lvl_1_patients.birth_date)) BETWEEN 40 AND 64)
  239.                                              LEFT JOIN diagnoses ON mv_stat_lvl_1_declarations.patient_id =
  240.                                                                     diagnoses.patient_id AND diagnoses.code = 'A98'
  241.                                              JOIN diagnoses_c1_64_counter ON mv_stat_lvl_1_declarations.patient_id =
  242.                                                                              diagnoses_c1_64_counter.patient_id AND
  243.                                                                              diagnoses_c1_64_counter.counter > 0
  244.                                              LEFT JOIN reasons ON reasons.patient_id = mv_stat_lvl_1_declarations.patient_id
  245.                                              JOIN reports ON reports.patient_id = mv_stat_lvl_1_declarations.patient_id
  246.                                              LEFT JOIN observations_c1_64_counter
  247.                                                        ON observations_c1_64_counter.patient_id =
  248.                                                           mv_stat_lvl_1_declarations.patient_id
  249.                                     WHERE ((diagnoses.code = 'A98' OR reasons.code = 'A98') AND
  250.                                            (diagnoses_c1_64_counter.counter > 0 AND
  251.                                             observations_c1_64_counter.counter > 0))
  252.                                     GROUP BY "mv_stat_lvl_1_declarations"."employee_id"),
  253.      "visits_upper_65_cnt" AS (SELECT COALESCE(COUNT(DISTINCT mv_stat_lvl_1_declarations.id), 0) as counter,
  254.                                       mv_stat_lvl_1_declarations.employee_id                     as employee_id
  255.                                FROM "mv_stat_lvl_1_declarations"
  256.                                         JOIN mv_stat_lvl_1_patients ON mv_stat_lvl_1_patients.legal_entity_id =
  257.                                                                        mv_stat_lvl_1_declarations.legal_entity_id AND
  258.                                                                        mv_stat_lvl_1_patients.id =
  259.                                                                        mv_stat_lvl_1_declarations.patient_id AND
  260.                                                                        (DATE_PART('YEAR',
  261.                                                                                   AGE('2024-03-08 23:59:59.999999', mv_stat_lvl_1_patients.birth_date)) BETWEEN 65 AND 999)
  262.                                         INNER JOIN diagnoses
  263.                                                    ON mv_stat_lvl_1_declarations.patient_id = diagnoses.patient_id
  264.                                         LEFT JOIN diagnoses_c1_65_counter ON mv_stat_lvl_1_declarations.patient_id =
  265.                                                                              diagnoses_c1_65_counter.patient_id
  266.                                         LEFT JOIN diagnoses_c2_65_counter ON mv_stat_lvl_1_declarations.patient_id =
  267.                                                                              diagnoses_c2_65_counter.patient_id
  268.                                         LEFT JOIN diagnoses_c3_65_counter ON mv_stat_lvl_1_declarations.patient_id =
  269.                                                                              diagnoses_c3_65_counter.patient_id
  270.                                         LEFT JOIN reasons ON reasons.patient_id = mv_stat_lvl_1_declarations.patient_id
  271.                                         JOIN actions ON actions.patient_id = mv_stat_lvl_1_declarations.patient_id
  272.                                         JOIN reports ON reports.patient_id = mv_stat_lvl_1_declarations.patient_id
  273.                                         LEFT JOIN observations_c1_65_counter ON observations_c1_65_counter.patient_id =
  274.                                                                                 mv_stat_lvl_1_declarations.patient_id
  275.                                         LEFT JOIN observations_c2_65_counter ON observations_c2_65_counter.patient_id =
  276.                                                                                 mv_stat_lvl_1_declarations.patient_id
  277.                                WHERE ((diagnoses.code = 'A98' OR reasons.code = 'A98') AND
  278.                                       (((diagnoses_c1_65_counter.counter > 0 OR diagnoses_c2_65_counter.counter > 0) AND
  279.                                         observations_c1_65_counter.counter > 0) OR
  280.                                        (diagnoses_c3_65_counter.counter > 0 AND
  281.                                         observations_c2_65_counter.counter > 0)))
  282.                                GROUP BY "mv_stat_lvl_1_declarations"."employee_id")
  283. SELECT COALESCE(MAX(hypertension_cnt.counter), 0)         as hypertension_counter,
  284.        COALESCE(MAX(diabetes_cnt.counter), 0)             as diabetes_counter,
  285.        COALESCE(MAX(prostate_cancer_cnt.counter), 0)      as prostate_cancer_counter,
  286.        COALESCE(MAX(breast_cancer_cnt.counter), 0)        as breast_cancer_counter,
  287.        COALESCE(MAX(colorectal_cancer_cnt.counter), 0)    as colorectal_cancer_counter,
  288.        COALESCE(MAX(hiv_cnt.counter), 0)                  as hiv_counter,
  289.        COALESCE(MAX(visits_from_40_to_64_cnt.counter), 0) as visits_from_40_to_64_counter,
  290.        COALESCE(MAX(visits_upper_65_cnt.counter), 0)      as visits_upper_65_counter,
  291.        mv_stat_lvl_0_employees.position_ref_id,
  292.        mv_stat_lvl_0_employees.full_name,
  293.        mv_stat_lvl_0_employees.id
  294. FROM "mv_stat_lvl_0_employees"
  295.          LEFT JOIN hypertension_cnt ON mv_stat_lvl_0_employees.id = hypertension_cnt.employee_id
  296.          LEFT JOIN diabetes_cnt ON mv_stat_lvl_0_employees.id = diabetes_cnt.employee_id
  297.          LEFT JOIN prostate_cancer_cnt ON mv_stat_lvl_0_employees.id = prostate_cancer_cnt.employee_id
  298.          LEFT JOIN breast_cancer_cnt ON mv_stat_lvl_0_employees.id = breast_cancer_cnt.employee_id
  299.          LEFT JOIN colorectal_cancer_cnt ON mv_stat_lvl_0_employees.id = colorectal_cancer_cnt.employee_id
  300.          LEFT JOIN hiv_cnt ON mv_stat_lvl_0_employees.id = hiv_cnt.employee_id
  301.          LEFT JOIN visits_from_40_to_64_cnt ON mv_stat_lvl_0_employees.id = visits_from_40_to_64_cnt.employee_id
  302.          LEFT JOIN visits_upper_65_cnt ON mv_stat_lvl_0_employees.id = visits_upper_65_cnt.employee_id
  303. WHERE "mv_stat_lvl_0_employees"."employee_type_ref_value" = 'DOCTOR'
  304.   AND "mv_stat_lvl_0_employees"."legal_entity_id" = 3228
  305.   AND "mv_stat_lvl_0_employees"."legal_entity_id" = 3228
  306. GROUP BY mv_stat_lvl_0_employees.id, mv_stat_lvl_0_employees.position_ref_id, mv_stat_lvl_0_employees.full_name
  307. ORDER BY mv_stat_lvl_0_employees.full_name ASC
  308. LIMIT 15 OFFSET 0
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement