FORUM PER UTENTI MILLEWIN
Attenzione !
Per intervenire sul forum è necessario essere registrati e connessi.

L'Amministratore

****************************************************
“Se tu hai una mela ed io ho una mela, e ce la scambiamo, alla fine tu ed io avremo sempre una mela ciascuno.
Ma se tu hai un’idea ed io ho un’idea, e ce la scambiamo, allora avremo entrambi due idee”.

George Bernard Shaw
****************************************************

diabetici ed statine

Vedere l'argomento precedente Vedere l'argomento seguente Andare in basso

diabetici ed statine

Messaggio  mario shirt il Ven 23 Ott 2015 - 13:02

ai Guru,
servirebbe estrarre numero diabetici, numero di diabetici che assumono statite, numero che assumono statine + ezetimibe, paz che assumono fulcro e simili.

Avevo pensato di mettere i diabetici nel registro e su questo lavorare con query. Essendo passato a postgress ho difficolta' Sad 

grazie ai maestri
Mario
avatar
mario shirt
Membro Junior
Membro Junior

Messaggi : 237
Punti : 2872
Voti per importanza dei messaggi : 4
Data d'iscrizione : 21.02.11
Età : 62

Vedi il profilo dell'utente

Tornare in alto Andare in basso

Re: diabetici ed statine

Messaggio  Cervino il Lun 26 Ott 2015 - 23:56

mario shirt ha scritto:ai Guru,  servirebbe estrarre numero diabetici, numero di diabetici che assumono statite, numero che assumono statine + ezetimibe, paz che assumono fulcro e simili.
Avevo pensato di mettere i diabetici nel registro e su questo lavorare con query. Essendo passato a postgress ho difficoltà Sad grazie ai maestri
Mario
Prova con :

Select  InitCap( u.nome)  As  mmg ,
( Select Count( Distinct p.codice) From pazienti p Left Outer Join nos_002 n On n.codice = p.codice Where n.pa_medi = u.userid And p.pa_convenzione = 'S' And ( n.pa_drevoca Is Null Or n.pa_drevoca > Today() Or ( n.pa_drevoca Between Date( Today())-365 And Today() And n.motivo_revoca = 'S')) And p.decesso Is Null
And p.codice IN ( Select b.codice From cart_pazpbl b Where b.codice = p.codice And b.cp_code ILike '250%' And Not ( b.pb_status = 'I' And b.modalita ='A' )))
               _DM_ ,
( Select Count( Distinct p.codice) From pazienti p Left Outer Join nos_002 n On p.codice = n.codice Where n.pa_medi = u.userid And p.pa_convenzione = 'S' And ( n.pa_drevoca Is Null Or n.pa_drevoca > Today() Or ( n.pa_drevoca Between Date( Today())-365 And Today() And n.motivo_revoca = 'S')) And p.decesso Is Null
And ( p.codice IN ( Select b.codice From cart_pazpbl b Where b.codice = p.codice And b.cp_code ILike '250%' And Not ( b.pb_status = 'I' And b.modalita ='A' ))
And p.codice IN ( Select t.codice From cart_terap t Where t.co_atc Similar To 'C10AA%' And t.data_open > Today()-365 Group By t.codice Having SUM( text2numeric( t.te_npezzi)) > 5 )))
              _DM_Statina_ ,  
( Select Count( Distinct p.codice) From pazienti p Left Outer Join nos_002 n On p.codice = n.codice Where n.pa_medi = u.userid And p.pa_convenzione = 'S' And ( n.pa_drevoca Is Null Or n.pa_drevoca > Today() Or ( n.pa_drevoca Between Date( Today())-365 And Today() And n.motivo_revoca = 'S')) And p.decesso Is Null
And ( p.codice IN ( Select b.codice From cart_pazpbl b Where b.codice = p.codice And b.cp_code ILike '250%' And Not ( b.pb_status = 'I' And b.modalita ='A' ))
And p.codice IN ( Select t.codice From cart_terap t Where t.co_atc Similar To 'C10AX09%' And t.data_open > Today()-365 Group By t.codice Having SUM( text2numeric( t.te_npezzi)) > 5 )))
             _DM_Ezetimibe_ , 
( Select Count( Distinct p.codice) From pazienti p Left Outer Join nos_002 n On p.codice = n.codice Where n.pa_medi = u.userid And p.pa_convenzione = 'S' And ( n.pa_drevoca Is Null Or n.pa_drevoca > Today() Or ( n.pa_drevoca Between Date( Today())-365 And Today() And n.motivo_revoca = 'S')) And p.decesso Is Null
And ( p.codice IN ( Select b.codice From cart_pazpbl b Where b.codice = p.codice And b.cp_code ILike '250%' And Not ( b.pb_status = 'I' And b.modalita ='A' ))
And p.codice IN ( Select t.codice From cart_terap t Where t.co_atc Similar To 'C10AA%' And t.data_open > Today()-365 Group By t.codice Having SUM( text2numeric( t.te_npezzi)) > 5 )
And p.codice IN ( Select t.codice From cart_terap t Where t.co_atc Similar To 'C10AX09%' And t.data_open > Today()-365 Group By t.codice Having SUM( text2numeric( t.te_npezzi)) > 5 )))
             _DM_Statina_Ezetimibe_s_ , 
( Select Count( Distinct p.codice) From pazienti p Left Outer Join nos_002 n On p.codice = n.codice Where n.pa_medi = u.userid And p.pa_convenzione = 'S' And ( n.pa_drevoca Is Null Or n.pa_drevoca > Today() Or ( n.pa_drevoca Between Date( Today())-365 And Today() And n.motivo_revoca = 'S')) And p.decesso Is Null
And ( p.codice IN ( Select b.codice From cart_pazpbl b Where b.codice = p.codice And b.cp_code ILike '250%' And Not ( b.pb_status = 'I' And b.modalita ='A' ))
And p.codice IN ( Select t.codice From cart_terap t Where t.co_atc Similar To 'C10BA%' And t.data_open > Today()-365 Group By t.codice Having SUM( text2numeric( t.te_npezzi)) > 5 )))
             _DM_Statina_Ezetimibe_ass_ , 
( Select Count( Distinct p.codice) From pazienti p Left Outer Join nos_002 n On p.codice = n.codice Where n.pa_medi = u.userid And p.pa_convenzione = 'S' And ( n.pa_drevoca Is Null Or n.pa_drevoca > Today() Or ( n.pa_drevoca Between Date( Today())-365 And Today() And n.motivo_revoca = 'S')) And p.decesso Is Null
And ( p.codice IN ( Select b.codice From cart_pazpbl b Where b.codice = p.codice And b.cp_code ILike '250%' And Not ( b.pb_status = 'I' And b.modalita ='A' ))
And (( p.codice IN ( Select t.codice From cart_terap t Where t.co_atc Similar To 'C10AA%' And t.data_open > Today()-365 Group By t.codice Having SUM( text2numeric( t.te_npezzi)) > 5 )
And p.codice IN ( Select t.codice From cart_terap t Where t.co_atc Similar To 'C10AX09%' And t.data_open > Today()-365 Group By t.codice Having SUM( text2numeric( t.te_npezzi)) > 5 ))
Or p.codice IN ( Select t.codice From cart_terap t Where t.co_atc Similar To 'C10BA%' And t.data_open > Today()-365 Group By t.codice Having SUM( text2numeric( t.te_npezzi)) > 5 ))))
           _DM_Statina_Ezetimibe_ , 
( Select Count( Distinct p.codice) From pazienti p Left Outer Join nos_002 n On p.codice = n.codice Where n.pa_medi = u.userid And p.pa_convenzione = 'S' And ( n.pa_drevoca Is Null Or n.pa_drevoca > Today() Or ( n.pa_drevoca Between Date( Today())-365 And Today() And n.motivo_revoca = 'S')) And p.decesso Is Null
And ( p.codice IN ( Select b.codice From cart_pazpbl b Where b.codice = p.codice And b.cp_code ILike '250%' And Not ( b.pb_status = 'I' And b.modalita ='A' ))
And p.codice IN ( Select t.codice From cart_terap t Where t.co_atc Similar To 'C10AB%' And t.data_open > Today()-365 Group By t.codice Having SUM( text2numeric( t.te_npezzi)) > 5 )))
            _DM_Fibrato_
FROM    v_utenti u 
WHERE   u.nome   ILIKE   '%'
ORDER BY 1



Verifica le clausole e/o le condizioni di ricerca ; alcune Subquery / Colonne servono x la verifica dei dati ; per disattivarle inglobale in /* ... */   
Ti saluto ,  Sergio

Cervino
Membro Junior
Membro Junior

Messaggi : 201
Punti : 2732
Voti per importanza dei messaggi : 13
Data d'iscrizione : 03.03.11
Età : 63
Località : Orzivecchi (BS)

Vedi il profilo dell'utente

Tornare in alto Andare in basso

Re: diabetici ed statine

Messaggio  mario shirt il Mar 27 Ott 2015 - 9:59

Cervino ha scritto:
mario shirt ha scritto:ai Guru,  servirebbe estrarre numero diabetici, numero di diabetici che assumono statite, numero che assumono statine + ezetimibe, paz che assumono fulcro e simili.
Avevo pensato di mettere i diabetici nel registro e su questo lavorare con query. Essendo passato a postgress ho difficoltà Sad grazie ai maestri
Mario
Prova con :

Select  InitCap( u.nome)  As  mmg ,
( Select Count( Distinct p.codice) From pazienti p Left Outer Join nos_002 n On n.codice = p.codice Where n.pa_medi = u.userid And p.pa_convenzione = 'S' And ( n.pa_drevoca Is Null Or n.pa_drevoca > Today() Or ( n.pa_drevoca Between Date( Today())-365 And Today() And n.motivo_revoca = 'S')) And p.decesso Is Null
And p.codice IN ( Select b.codice From cart_pazpbl b Where b.codice = p.codice And b.cp_code ILike '250%' And Not ( b.pb_status = 'I' And b.modalita ='A' )))
               _DM_ ,
( Select Count( Distinct p.codice) From pazienti p Left Outer Join nos_002 n On p.codice = n.codice Where n.pa_medi = u.userid And p.pa_convenzione = 'S' And ( n.pa_drevoca Is Null Or n.pa_drevoca > Today() Or ( n.pa_drevoca Between Date( Today())-365 And Today() And n.motivo_revoca = 'S')) And p.decesso Is Null
And ( p.codice IN ( Select b.codice From cart_pazpbl b Where b.codice = p.codice And b.cp_code ILike '250%' And Not ( b.pb_status = 'I' And b.modalita ='A' ))
And p.codice IN ( Select t.codice From cart_terap t Where t.co_atc Similar To 'C10AA%' And t.data_open > Today()-365 Group By t.codice Having SUM( text2numeric( t.te_npezzi)) > 5 )))
              _DM_Statina_ ,  
( Select Count( Distinct p.codice) From pazienti p Left Outer Join nos_002 n On p.codice = n.codice Where n.pa_medi = u.userid And p.pa_convenzione = 'S' And ( n.pa_drevoca Is Null Or n.pa_drevoca > Today() Or ( n.pa_drevoca Between Date( Today())-365 And Today() And n.motivo_revoca = 'S')) And p.decesso Is Null
And ( p.codice IN ( Select b.codice From cart_pazpbl b Where b.codice = p.codice And b.cp_code ILike '250%' And Not ( b.pb_status = 'I' And b.modalita ='A' ))
And p.codice IN ( Select t.codice From cart_terap t Where t.co_atc Similar To 'C10AX09%' And t.data_open > Today()-365 Group By t.codice Having SUM( text2numeric( t.te_npezzi)) > 5 )))
             _DM_Ezetimibe_ , 
( Select Count( Distinct p.codice) From pazienti p Left Outer Join nos_002 n On p.codice = n.codice Where n.pa_medi = u.userid And p.pa_convenzione = 'S' And ( n.pa_drevoca Is Null Or n.pa_drevoca > Today() Or ( n.pa_drevoca Between Date( Today())-365 And Today() And n.motivo_revoca = 'S')) And p.decesso Is Null
And ( p.codice IN ( Select b.codice From cart_pazpbl b Where b.codice = p.codice And b.cp_code ILike '250%' And Not ( b.pb_status = 'I' And b.modalita ='A' ))
And p.codice IN ( Select t.codice From cart_terap t Where t.co_atc Similar To 'C10AA%' And t.data_open > Today()-365 Group By t.codice Having SUM( text2numeric( t.te_npezzi)) > 5 )
And p.codice IN ( Select t.codice From cart_terap t Where t.co_atc Similar To 'C10AX09%' And t.data_open > Today()-365 Group By t.codice Having SUM( text2numeric( t.te_npezzi)) > 5 )))
             _DM_Statina_Ezetimibe_s_ , 
( Select Count( Distinct p.codice) From pazienti p Left Outer Join nos_002 n On p.codice = n.codice Where n.pa_medi = u.userid And p.pa_convenzione = 'S' And ( n.pa_drevoca Is Null Or n.pa_drevoca > Today() Or ( n.pa_drevoca Between Date( Today())-365 And Today() And n.motivo_revoca = 'S')) And p.decesso Is Null
And ( p.codice IN ( Select b.codice From cart_pazpbl b Where b.codice = p.codice And b.cp_code ILike '250%' And Not ( b.pb_status = 'I' And b.modalita ='A' ))
And p.codice IN ( Select t.codice From cart_terap t Where t.co_atc Similar To 'C10BA%' And t.data_open > Today()-365 Group By t.codice Having SUM( text2numeric( t.te_npezzi)) > 5 )))
             _DM_Statina_Ezetimibe_ass_ , 
( Select Count( Distinct p.codice) From pazienti p Left Outer Join nos_002 n On p.codice = n.codice Where n.pa_medi = u.userid And p.pa_convenzione = 'S' And ( n.pa_drevoca Is Null Or n.pa_drevoca > Today() Or ( n.pa_drevoca Between Date( Today())-365 And Today() And n.motivo_revoca = 'S')) And p.decesso Is Null
And ( p.codice IN ( Select b.codice From cart_pazpbl b Where b.codice = p.codice And b.cp_code ILike '250%' And Not ( b.pb_status = 'I' And b.modalita ='A' ))
And (( p.codice IN ( Select t.codice From cart_terap t Where t.co_atc Similar To 'C10AA%' And t.data_open > Today()-365 Group By t.codice Having SUM( text2numeric( t.te_npezzi)) > 5 )
And p.codice IN ( Select t.codice From cart_terap t Where t.co_atc Similar To 'C10AX09%' And t.data_open > Today()-365 Group By t.codice Having SUM( text2numeric( t.te_npezzi)) > 5 ))
Or p.codice IN ( Select t.codice From cart_terap t Where t.co_atc Similar To 'C10BA%' And t.data_open > Today()-365 Group By t.codice Having SUM( text2numeric( t.te_npezzi)) > 5 ))))
           _DM_Statina_Ezetimibe_ , 
( Select Count( Distinct p.codice) From pazienti p Left Outer Join nos_002 n On p.codice = n.codice Where n.pa_medi = u.userid And p.pa_convenzione = 'S' And ( n.pa_drevoca Is Null Or n.pa_drevoca > Today() Or ( n.pa_drevoca Between Date( Today())-365 And Today() And n.motivo_revoca = 'S')) And p.decesso Is Null
And ( p.codice IN ( Select b.codice From cart_pazpbl b Where b.codice = p.codice And b.cp_code ILike '250%' And Not ( b.pb_status = 'I' And b.modalita ='A' ))
And p.codice IN ( Select t.codice From cart_terap t Where t.co_atc Similar To 'C10AB%' And t.data_open > Today()-365 Group By t.codice Having SUM( text2numeric( t.te_npezzi)) > 5 )))
            _DM_Fibrato_
FROM    v_utenti u 
WHERE   u.nome   ILIKE   '%'
ORDER BY 1



Verifica le clausole e/o le condizioni di ricerca ; alcune Subquery / Colonne servono x la verifica dei dati ; per disattivarle inglobale in /* ... */   
Ti saluto ,  Sergio
Funziona grazie, mi da l'elenco di tutti i medici sostituti....
Ho perplessita': a occhio dovrei avere molti piu' pazienti che fanno statine o ezetimide..
prende le terapie legate al problema diabete o conta solo i diabetici e le relative terapie?
Mario
avatar
mario shirt
Membro Junior
Membro Junior

Messaggi : 237
Punti : 2872
Voti per importanza dei messaggi : 4
Data d'iscrizione : 21.02.11
Età : 62

Vedi il profilo dell'utente

Tornare in alto Andare in basso

Re: diabetici ed statine

Messaggio  Cervino il Mer 28 Ott 2015 - 0:51

mario shirt ha scritto:
Funziona grazie, mi da l'elenco di tutti i medici sostituti....
Ho perplessita': a occhio dovrei avere molti piu' pazienti che fanno statine o ezetimide..
prende le terapie legate al problema diabete o conta solo i diabetici e le relative terapie?
Mario


Per avere i dati di un singolo medico,  basta specificare il nome Utente di accesso a MW nella relativa clausola ( ad es. WHERE   u.nome   ILIKE   'Mario%' ) .  La query conta solo i Diabetici e la relativa terapia con IpoLipidemizzanti ( almeno 5 pezzi prescritto nell' ultimo anno ) . Le statistiche spesso sorprendono : sul mio MillePs il 50 % dei Diabetici è in terapia con statina mentre i Diabetici rappresentano il 40% di tutti i pazienti in terapia con statina .
L' unico modo per verificare i dati di riepilogo, è confrontarli con quelli ottenuti con una query analitica , modificando eventualmente alcune clausole , come ad esempio :

Select Distinct  u.codice_regionale  As  mmg_code ,    Cast( p.cognome ||'     '|| p.nome As Char(36))  As  paziente ,
Cast(  DateFormat( p.nascita, 'yyyymmdd' )  As Char(14))  As  nascita ,   p.sesso ,  p.provincia_nascita  As  prov_nasc ,

( Select Cast( DateFormat( Max( b.data_open) , 'yyyymmdd' )  As Char(14))  From  cart_pazpbl b  Where b.codice = p.codice And  b.cp_code  Like '250%'  And Not ( b.pb_status = 'I' And b.modalita ='A' ) )
         _DM_onset_ ,

( Select  Cast( DateFormat( Max( b.data_open) , 'yyyymmdd' )  As Char(14))  From  cart_pazpbl b  Where  b.codice = p.codice  And  b.cp_code Like  '272%' And Not ( b.pb_status = 'I' And modalita = 'A' And b.certezza = 'S' ) )
       _DisLipidemia_onset_ ,

(Select  Distinct  1  From  cart_terap t  Where  t.codice=p.codice  And ( t.co_atc  Like  'C10AA%'  Or  t.co_atc  Like  'C10AB%' )
And  t.data_open  Between  Date( Today())-180  And  Today() )
      _Statine_Fibrati_ ,                                 Today() As  query_d 

FROM ( pazienti p  Left Outer Join  nos_002 n  On  p.codice = n.codice )
                           Left Outer Join  v_utenti u   On  n.pa_medi = u.userid
WHERE   u.nome  ILike  '%'   AND   p.pa_convenzione = 'S'
AND   Year( nascita) Between 1910 And 2015
AND ( n.pa_drevoca Is Null  Or  n.pa_drevoca >  Today()  Or  ( n.pa_drevoca Between
Date( Today())-365  And Today() And motivo_revoca = 'S'))  And p.decesso Is Null
AND  p.codice IN ( Select b.codice From cart_pazpbl b Where b.codice = p.codice And b.cp_code ILike '250%' And Not ( b.pb_status = 'I' And b.modalita ='A' ))
AND  p.codice IN ( Select t.codice From cart_terap t Where t.co_atc Similar To 'C10AA%' And t.data_open > Today()-365 Group By t.codice Having SUM( text2numeric( t.te_npezzi)) > 5 )
Order By  2    Limit  1500   OffSet  0

Nel mio caso il risultato non cambia .     Ti saluto ,  Sergio

Cervino
Membro Junior
Membro Junior

Messaggi : 201
Punti : 2732
Voti per importanza dei messaggi : 13
Data d'iscrizione : 03.03.11
Età : 63
Località : Orzivecchi (BS)

Vedi il profilo dell'utente

Tornare in alto Andare in basso

Re: diabetici ed statine

Messaggio  Contenuto sponsorizzato


Contenuto sponsorizzato


Tornare in alto Andare in basso

Vedere l'argomento precedente Vedere l'argomento seguente Tornare in alto

- Argomenti simili

 
Permessi di questa sezione del forum:
Non puoi rispondere agli argomenti in questo forum