Query per diabetici
Query per diabetici
Ai soliti colleghi esperti, chiedo la cortesia di poter avere questa query per i pazienti che hanno diagnosi di diabete mellito tipo 2:
I dati dovranno avere il seguente incolonnamento:
- Data di nascita;
- Sesso;
- Peso;
- Altezza;
- Eventuali comorbidità: ipertensione, cardiopatia ischemica, dislipidemia;
- Valore glicata (considerare risultato dell’ultimo esame disponibile del 2016);
- Valore creatinina (considerare risultato dell’ultimo esame disponibile del 2016);
- Valore trigliceridi (considerare risultato dell’ultimo esame disponibile del 2016);
- Valore colesterolo (considerare risultato dell’ultimo esame disponibile del 2016);
- Valore HDL (considerare risultato dell’ultimo esame disponibile del 2016);
- In carico ai servizi ADI (si/no) (considerare la situazione al 31/12/2016);
- In carico in RSA (si/no) (considerare la situazione al 31/12/2016);
- Codice del medico.
I dati dovranno avere il seguente incolonnamento:
idpaziente | ETA' | SESSO | Peso | Altezza | Eventuali comorbidità | Valore glicata | Valore creatinina | Valore trigliceridi | Valore colesterolo | Valore HDL | ADI | RSA | Codice mmg |
Grazie.
Re: Query per diabetici
Eccola:
SELECT
p.codice,
cast(days(p.nascita,today())/365.25 as integer) as eta,
p.sesso,
(
CASE WHEN EXISTS (SELECT p.codice FROM cart_pazpbl pro WHERE pro.codice = p.codice AND
(pro.cp_code LIKE '401%' OR pro.cp_code LIKE '402%' )
AND pro.pb_status not in ('I','R')) THEN 'Ipertensione arteriosa ' ELSE '' END ||
CASE WHEN EXISTS (SELECT p.codice FROM cart_pazpbl pro WHERE pro.codice = p.codice AND
(pro.cp_code LIKE '272%' )
AND pro.pb_status not in ('I','R')) THEN 'Dislipidemia' ELSE '' END
) comorbilita,
(SELECT va.ac_val FROM cart_accert va where va.codice=p.codice AND va.ac_code = '1946' AND va.ac_val > ' ' order by va.data_upd desc limit 1) as peso,
(SELECT va.ac_val FROM cart_accert va where va.codice=p.codice AND va.ac_code = '1935' AND va.ac_val > ' ' order by va.data_upd desc limit 1) as
altezza,
(SELECT va.ac_val FROM cart_accert va where va.codice=p.codice AND va.ac_code = ' 703' AND va.ac_val > ' ' AND va.data_open BETWEEN '2016-01-01'
AND '2016-12-31' order by va.data_open desc limit 1) as glicata,
(SELECT va.ac_val FROM cart_accert va where va.codice=p.codice AND va.ac_code = ' 629' AND va.ac_val > ' ' AND va.data_open BETWEEN '2016-01-01'
AND '2016-12-31' order by va.data_open desc limit 1) as creatinina,
(SELECT va.ac_val FROM cart_accert va where va.codice=p.codice AND va.ac_code = ' 785' AND va.ac_val > ' ' AND va.data_open BETWEEN '2016-01-01'
AND '2016-12-31' order by va.data_open desc limit 1) as trigliceridi,
(SELECT va.ac_val FROM cart_accert va where va.codice=p.codice AND va.ac_code = ' 616' AND va.ac_val > ' ' AND va.data_open BETWEEN '2016-01-01'
AND '2016-12-31' order by va.data_open desc limit 1) as HDL,
CASE WHEN EXISTS (SELECT 1 FROM cart_incent c WHERE c.codice = p.codice AND c.incent_code = '0000024' AND c.data_open BETWEEN '2016-01-01'
AND '2016-12-31' ) THEN 'SI' ELSE 'NO' END as ADI,
CASE WHEN EXISTS (SELECT 1 FROM cart_incent c WHERE c.codice = p.codice AND c.incent_code = '0000248' AND c.data_open BETWEEN '2016-01-01'
AND '2016-12-31' ) THEN 'SI' ELSE 'NO' END as RSA,
u.codice_fiscale
FROM pazienti p join nos_002 n on p.codice=n.codice join v_utenti u on n.pa_medi = u.userid join temp_pazienti on p.codice=temp_pazienti.codice join
temp_parametri on temp_pazienti.istanza=temp_parametri.istanza
WHERE
p.pa_convenzione = 'S' AND
exists (SELECT 1 FROM cart_pazpbl pro WHERE pro.codice = p.codice AND (pro.cp_code like '250._0' OR pro.cp_code like '250._2') AND pro.data_open <
'2017-01-01' AND pro.pb_status not in ('I','R'))
order by u.codice_fiscale, p.nascita
SELECT
p.codice,
cast(days(p.nascita,today())/365.25 as integer) as eta,
p.sesso,
(
CASE WHEN EXISTS (SELECT p.codice FROM cart_pazpbl pro WHERE pro.codice = p.codice AND
(pro.cp_code LIKE '401%' OR pro.cp_code LIKE '402%' )
AND pro.pb_status not in ('I','R')) THEN 'Ipertensione arteriosa ' ELSE '' END ||
CASE WHEN EXISTS (SELECT p.codice FROM cart_pazpbl pro WHERE pro.codice = p.codice AND
(pro.cp_code LIKE '272%' )
AND pro.pb_status not in ('I','R')) THEN 'Dislipidemia' ELSE '' END
) comorbilita,
(SELECT va.ac_val FROM cart_accert va where va.codice=p.codice AND va.ac_code = '1946' AND va.ac_val > ' ' order by va.data_upd desc limit 1) as peso,
(SELECT va.ac_val FROM cart_accert va where va.codice=p.codice AND va.ac_code = '1935' AND va.ac_val > ' ' order by va.data_upd desc limit 1) as
altezza,
(SELECT va.ac_val FROM cart_accert va where va.codice=p.codice AND va.ac_code = ' 703' AND va.ac_val > ' ' AND va.data_open BETWEEN '2016-01-01'
AND '2016-12-31' order by va.data_open desc limit 1) as glicata,
(SELECT va.ac_val FROM cart_accert va where va.codice=p.codice AND va.ac_code = ' 629' AND va.ac_val > ' ' AND va.data_open BETWEEN '2016-01-01'
AND '2016-12-31' order by va.data_open desc limit 1) as creatinina,
(SELECT va.ac_val FROM cart_accert va where va.codice=p.codice AND va.ac_code = ' 785' AND va.ac_val > ' ' AND va.data_open BETWEEN '2016-01-01'
AND '2016-12-31' order by va.data_open desc limit 1) as trigliceridi,
(SELECT va.ac_val FROM cart_accert va where va.codice=p.codice AND va.ac_code = ' 616' AND va.ac_val > ' ' AND va.data_open BETWEEN '2016-01-01'
AND '2016-12-31' order by va.data_open desc limit 1) as HDL,
CASE WHEN EXISTS (SELECT 1 FROM cart_incent c WHERE c.codice = p.codice AND c.incent_code = '0000024' AND c.data_open BETWEEN '2016-01-01'
AND '2016-12-31' ) THEN 'SI' ELSE 'NO' END as ADI,
CASE WHEN EXISTS (SELECT 1 FROM cart_incent c WHERE c.codice = p.codice AND c.incent_code = '0000248' AND c.data_open BETWEEN '2016-01-01'
AND '2016-12-31' ) THEN 'SI' ELSE 'NO' END as RSA,
u.codice_fiscale
FROM pazienti p join nos_002 n on p.codice=n.codice join v_utenti u on n.pa_medi = u.userid join temp_pazienti on p.codice=temp_pazienti.codice join
temp_parametri on temp_pazienti.istanza=temp_parametri.istanza
WHERE
p.pa_convenzione = 'S' AND
exists (SELECT 1 FROM cart_pazpbl pro WHERE pro.codice = p.codice AND (pro.cp_code like '250._0' OR pro.cp_code like '250._2') AND pro.data_open <
'2017-01-01' AND pro.pb_status not in ('I','R'))
order by u.codice_fiscale, p.nascita
Argomenti simili
» query per diabetici over 60 anni in terapia con metformina
» BMI in diabetici
» diabetici ed statine
» Report diabetici
» pz diabetici e altro
» BMI in diabetici
» diabetici ed statine
» Report diabetici
» pz diabetici e altro
Permessi in questa sezione del forum:
Non puoi rispondere agli argomenti in questo forum.