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
****************************************************

Unisciti al forum, è facile e veloce

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
****************************************************
FORUM PER UTENTI MILLEWIN
Vuoi reagire a questo messaggio? Crea un account in pochi click o accedi per continuare.

Ricerca farmaci prescritti in base al problema codificato

2 partecipanti

Andare in basso

Ricerca farmaci prescritti in base al problema codificato Empty Ricerca farmaci prescritti in base al problema codificato

Messaggio  massimo.meacci Gio 8 Mar 2018 - 23:45

Buonasera colleghi, vorrei fare una estrazione SQL estraendo quali antibiotico viene usato in relazione ad problema codificato. Per esempio se tonsillite quale antibiotico è stato usato. Se bronchite idem. ecc..
Qualcuno ha una stringa per fare questo tipo di estrazione o qualcosa di simile da poter modificare icd9 se relativa a problemi diversi?
Grazie in anticipo

massimo.meacci
Nuovo Membro
Nuovo Membro

Messaggi : 3
Punti : 4816
Voti per importanza dei messaggi : 0
Data d'iscrizione : 08.03.11

Torna in alto Andare in basso

Ricerca farmaci prescritti in base al problema codificato Empty Re: Ricerca farmaci prescritti in base al problema codificato

Messaggio  Cervino Dom 11 Mar 2018 - 11:55

massimo.meacci ha scritto:Buonasera colleghi, vorrei fare una estrazione SQL estraendo quali antibiotico viene usato in relazione ad problema codificato. Per esempio se tonsillite quale antibiotico è stato usato. Se bronchite idem. ecc..
Qualcuno ha una stringa per fare questo tipo di estrazione o qualcosa di simile da poter modificare icd9 se relativa a problemi diversi?
Grazie in anticipo
Forse puo' esserTi utile una query del tipo :

SELECT Distinct  p.cognome ,  p.nome ,  Cast( Days( p.nascita , Today()+1)*24/8766 As SmallInt )  As  eta , p.sesso , t.data_open ,  t.co_des ,  t.co_atc ,  b.nome_pbl ,  b.cp_code ,  Today()  As  query_d
FROM  ( pazienti  p  LEFT  JOIN  cart_terap t  ON   p.codice = t.codice )   LEFT  JOIN   cart_pazpbl b  ON   t.codice = b.codice
WHERE  ( t.co_atc ILIKE 'J01%'  AND  t.data_open > Today()-365 )  AND  t.pb_code = b.pb_code
ORDER BY  1 ,  2 , 6


in Postgres una query di tal genere andrebbe tuttavia modificata utilizzando un sistema a cascata :

WITH  atb  AS ( SELECT codice , data_open AS ter_d , co_des AS terap , co_atc AS atc , pb_code FROM  cart_terap t  WHERE t.co_atc ILIKE 'J01%' AND  t.data_open > Today()-365 ) ,
  pbl AS  ( SELECT nome_pbl AS pbl , cp_code AS icd , pb_code FROM cart_pazpbl WHERE codice IN ( SELECT codice FROM atb) AND pb_code IN ( SELECT pb_code FROM atb))
SELECT  DISTINCT  p.cognome ,  p.nome ,  Cast( Days( p.nascita , Today()+1)*24/8766 As SmallInt )  As  eta , p.sesso ,
 ter_d , terap , atc , pbl , icd   FROM ( atb   LEFT JOIN   pbl   USING( pb_code ))  LEFT JOIN   pazienti p  USING( codice)
ORDER BY  1 ,  2 , 5 , 6


che purtroppo non credo funzioni con l' attuale versione di MW-MU  .   Saluti  Sergio

Cervino
Membro Junior
Membro Junior

Messaggi : 245
Punti : 5084
Voti per importanza dei messaggi : 22
Data d'iscrizione : 03.03.11
Età : 69
Località : Orzivecchi (BS)

Torna in alto Andare in basso

Ricerca farmaci prescritti in base al problema codificato Empty Ricerca farmaci prescritti in base al problema codificato

Messaggio  massimo.meacci Dom 11 Mar 2018 - 13:14

Cervino ha scritto:
massimo.meacci ha scritto:Buonasera colleghi, vorrei fare una estrazione SQL estraendo quali antibiotico viene usato in relazione ad problema codificato. Per esempio se tonsillite quale antibiotico è stato usato. Se bronchite idem. ecc..
Qualcuno ha una stringa per fare questo tipo di estrazione o qualcosa di simile da poter modificare icd9 se relativa a problemi diversi?
Grazie in anticipo
Forse puo' esserTi utile una query del tipo :

SELECT Distinct  p.cognome ,  p.nome ,  Cast( Days( p.nascita , Today()+1)*24/8766 As SmallInt )  As  eta , p.sesso , t.data_open ,  t.co_des ,  t.co_atc ,  b.nome_pbl ,  b.cp_code ,  Today()  As  query_d
FROM  ( pazienti  p  LEFT  JOIN  cart_terap t  ON   p.codice = t.codice )   LEFT  JOIN   cart_pazpbl b  ON   t.codice = b.codice
WHERE  ( t.co_atc ILIKE 'J01%'  AND  t.data_open > Today()-365 )  AND  t.pb_code = b.pb_code
ORDER BY  1 ,  2 , 6


in Postgres una query di tal genere andrebbe tuttavia modificata utilizzando un sistema a cascata :

WITH  atb  AS ( SELECT codice , data_open AS ter_d , co_des AS terap , co_atc AS atc , pb_code FROM  cart_terap t  WHERE t.co_atc ILIKE 'J01%' AND  t.data_open > Today()-365 ) ,
  pbl AS  ( SELECT nome_pbl AS pbl , cp_code AS icd , pb_code FROM cart_pazpbl WHERE codice IN ( SELECT codice FROM atb) AND pb_code IN ( SELECT pb_code FROM atb))
SELECT  DISTINCT  p.cognome ,  p.nome ,  Cast( Days( p.nascita , Today()+1)*24/8766 As SmallInt )  As  eta , p.sesso ,
 ter_d , terap , atc , pbl , icd   FROM ( atb   LEFT JOIN   pbl   USING( pb_code ))  LEFT JOIN   pazienti p  USING( codice)
ORDER BY  1 ,  2 , 5 , 6


che purtroppo non credo funzioni con l' attuale versione di MW-MU  .   Saluti  Sergio

Grazie delle query. Ho provato la prima e estrae bene tutte le terapie antibiotiche con tutti i problemi. (mi sarà molto utile). 
La seconda mi rende 0 righe.

Nel frattempo cercando nel gruppo ho trovato una query fatta per il diabete che ho modificato come segue:

Select Distinct p.cognome, p.nome, p.nascita, p.sesso, b.pr_descr Problema, b.data_open Inizio_Problema, t.co_Des Farmaco, t.te_Npezzi N_Pezzi, t.data_open Data_prescr, t.co_Atc ATC
FROM pazienti p , nos_002 n, cart_problemi b, cart_terap t
Where p.codice = n.codice And b.codice = p.codice AND p.codice=t.codice
AND(b.cp_code like '46%' OR b.cp_code like '47%' OR b.cp_code like '48%' OR b.cp_code like '49%' OR b.cp_code like '50%' OR b.cp_code like '51%')
AND b.data_open > (Today() - 5840)
And (n.pa_drevoca Is Null Or n.pa_drevoca > Today()) 
AND (t.co_ATC LIKE 'J01%')
AND t.data_open BETWEEN '2017/01/01' AND '2017/12/31'
ORDER BY t.co_Atc

Mi fa una giusta estrazione, ora però sto cercando di fare i conti di spesa per ogni tipo di antibiotico.
Se hai suggerimenti ti ringrazio.
Massimo

massimo.meacci
Nuovo Membro
Nuovo Membro

Messaggi : 3
Punti : 4816
Voti per importanza dei messaggi : 0
Data d'iscrizione : 08.03.11

Torna in alto Andare in basso

Ricerca farmaci prescritti in base al problema codificato Empty Re: Ricerca farmaci prescritti in base al problema codificato

Messaggio  Cervino Dom 11 Mar 2018 - 21:02

massimo.meacci ha scritto:Grazie delle query. Ho provato la prima e estrae bene tutte le terapie antibiotiche con tutti i problemi. (mi sarà molto utile). 
La seconda mi rende 0 righe.
Nel frattempo cercando nel gruppo ho trovato una query fatta per il diabete che ho modificato come segue:
Select Distinct p.cognome, p.nome, p.nascita, p.sesso, b.pr_descr Problema, b.data_open Inizio_Problema, t.co_Des Farmaco, t.te_Npezzi N_Pezzi, t.data_open Data_prescr, t.co_Atc ATC
FROM pazienti p , nos_002 n, cart_problemi b, cart_terap t
Where p.codice = n.codice And b.codice = p.codice AND p.codice=t.codice
AND(b.cp_code like '46%' OR b.cp_code like '47%' OR b.cp_code like '48%' OR b.cp_code like '49%' OR b.cp_code like '50%' OR b.cp_code like '51%')
AND b.data_open > (Today() - 5840)
And (n.pa_drevoca Is Null Or n.pa_drevoca > Today()) 
AND (t.co_ATC LIKE 'J01%')
AND t.data_open BETWEEN '2017/01/01' AND '2017/12/31'
ORDER BY t.co_Atc
Mi fa una giusta estrazione, ora però sto cercando di fare i conti di spesa per ogni tipo di antibiotico.
Se hai suggerimenti ti ringrazio.   Massimo
Come immaginato, la seconda query restituisce 0 righe, in quanto purtroppo nell' attuale versione di MW-MU l' istruzione WITH non è incredibilmente implementata : ma bisognerebbe partire da una query di tal genere per la ricerca da Te proposta ,
in quanto le query classiche rischiano di restituire vare incongruenze nelle estrazioni . 
Ho provato a modificare la query implementandola con le clausole selettive da Te richieste ; ecco alcune possibili soluzioni :


SELECT DISTINCT  p.cognome , p.nome , p.nascita , p.sesso ,
 (SELECT Max( b.pr_descr) AS problema FROM cart_problemi b WHERE b. codice = t. codice AND ((b.cp_code ILIKE '46%' OR b.cp_code ILIKE '47%' OR b.cp_code ILIKE '48%' OR b.cp_code ILIKE '49%' OR b.cp_code ILIKE '50%' OR b.cp_code ILIKE '51%')
   /* AND b.data_open > (Today() - 5840)) */ AND  t.pb_code = b.pb_code ))  _problema_ ,
t.co_Des AS Farmaco, t.te_npezzi AS n_pezzi, t.data_open AS data_prescr, t.co_atc AS atc
FROM ((  cart_terap t  LEFT JOIN  cart_pazpbl b  USING( codice)) LEFT JOIN  pazienti p   USING( codice))  LEFT JOIN  nos_002 n USING( codice)
WHERE (t.co_atc ILIKE 'J01%' AND t.data_open BETWEEN '2017/01/01' AND '2017/12/31')
AND ((b.cp_code ILIKE '46%' OR b.cp_code ILIKE '47%' OR b.cp_code ILIKE '48%' OR b.cp_code ILIKE '49%' OR b.cp_code ILIKE '50%' OR b.cp_code ILIKE '51%') /* AND b.data_open > (Today() - 5840)*/ )
AND (n.pa_drevoca Is Null OR n.pa_drevoca > Today())
ORDER BY  _problema_ , t.co_atc , p.cognome, p.nome , t.data_open
                                                         oppure
SELECT DISTINCT  p.cognome , p.nome , p.nascita , p.sesso ,
 (SELECT b.nome_pbl AS problema FROM cart_pazpbl b WHERE b. codice = t. codice AND ((b.cp_code ILIKE '46%' OR b.cp_code ILIKE '47%' OR b.cp_code ILIKE '48%' OR b.cp_code ILIKE '49%' OR b.cp_code ILIKE '50%' OR b.cp_code ILIKE '51%')
  /* AND b.data_open > (Today() - 5840))  */ AND  t.pb_code = b.pb_code ))  _problema_ ,
t.co_Des AS Farmaco, t.te_Npezzi AS n_pezzi, t.data_open AS data_prescr, t.co_atc AS atc
FROM ((  cart_terap t  lEFT JOIN  cart_pazpbl b  USING( codice)) LEFT JOIN  pazienti p   USING( codice))  LEFT JOIN  nos_002 n USING( codice)
WHERE (t.co_atc ILIKE 'J01%' AND t.data_open BETWEEN '2017/01/01' AND '2017/12/31')
AND ((b.cp_code ILIKE '46%' OR b.cp_code ILIKE '47%' OR b.cp_code ILIKE '48%' OR b.cp_code ILIKE '49%' OR b.cp_code ILIKE '50%' OR b.cp_code ILIKE '51%')  /* AND b.data_open > (Today() - 5840)*/ )
AND (n.pa_drevoca Is Null OR n.pa_drevoca > Today())
ORDER BY _problema_ , t.co_atc , p.cognome, p.nome , t.data_open

                                              senza correlazione  fra  Problema  e  Terapia :
SELECT DISTINCT p.cognome, p.nome, p.nascita, p.sesso, b.nome_pbl AS problema, b.data_open AS Inizio_Problema, t.co_Des AS Farmaco, t.te_Npezzi AS n_pezzi, t.data_open AS data_prescr, t.co_atc AS atc
FROM ((  cart_terap t  LEFT JOIN  cart_pazpbl b  USING( codice)) LEFT JOIN  pazienti p   USING( codice))  LEFT JOIN  nos_002 n USING( codice)
WHERE (t.co_atc ILIKE 'J01%' AND t.data_open BETWEEN '2017/01/01' AND '2017/12/31')
AND ((b.cp_code ILIKE '46%' OR b.cp_code ILIKE '47%' OR b.cp_code ILIKE '48%' OR b.cp_code ILIKE '49%' OR b.cp_code ILIKE '50%' OR b.cp_code ILIKE '51%')  AND b.data_open > (Today() - 5840))
AND (n.pa_drevoca Is Null OR n.pa_drevoca > Today())
ORDER BY t.co_atc , p.cognome, p.nome , t.data_open


ma l' attendibilità dei vari set estratti  ( in teoria almeno il 1° e/o il 2° ),  va verificare con lunghe e laboriose analisi/verifiche; per query relativamente non semplici come queste, l' utilizzo di uno schema classico ( senza WITH )
si rivela quantomeno problematico .      Ti saluto ,  Sergio

PS : ... ora però sto cercando di fare i conti di spesa per ogni tipo di antibiotico ... sarebbe opportuno precisare meglio le condizioni di ricerca

Cervino
Membro Junior
Membro Junior

Messaggi : 245
Punti : 5084
Voti per importanza dei messaggi : 22
Data d'iscrizione : 03.03.11
Età : 69
Località : Orzivecchi (BS)

Torna in alto Andare in basso

Ricerca farmaci prescritti in base al problema codificato Empty Re: Ricerca farmaci prescritti in base al problema codificato

Messaggio  massimo.meacci Lun 12 Mar 2018 - 11:03

Cervino ha scritto:
massimo.meacci ha scritto:Grazie delle query. Ho provato la prima e estrae bene tutte le terapie antibiotiche con tutti i problemi. (mi sarà molto utile). 
La seconda mi rende 0 righe.
Nel frattempo cercando nel gruppo ho trovato una query fatta per il diabete che ho modificato come segue:
Select Distinct p.cognome, p.nome, p.nascita, p.sesso, b.pr_descr Problema, b.data_open Inizio_Problema, t.co_Des Farmaco, t.te_Npezzi N_Pezzi, t.data_open Data_prescr, t.co_Atc ATC
FROM pazienti p , nos_002 n, cart_problemi b, cart_terap t
Where p.codice = n.codice And b.codice = p.codice AND p.codice=t.codice
AND(b.cp_code like '46%' OR b.cp_code like '47%' OR b.cp_code like '48%' OR b.cp_code like '49%' OR b.cp_code like '50%' OR b.cp_code like '51%')
AND b.data_open > (Today() - 5840)
And (n.pa_drevoca Is Null Or n.pa_drevoca > Today()) 
AND (t.co_ATC LIKE 'J01%')
AND t.data_open BETWEEN '2017/01/01' AND '2017/12/31'
ORDER BY t.co_Atc
Mi fa una giusta estrazione, ora però sto cercando di fare i conti di spesa per ogni tipo di antibiotico.
Se hai suggerimenti ti ringrazio.   Massimo
Come immaginato, la seconda query restituisce 0 righe, in quanto purtroppo nell' attuale versione di MW-MU l' istruzione WITH non è incredibilmente implementata : ma bisognerebbe partire da una query di tal genere per la ricerca da Te proposta ,
in quanto le query classiche rischiano di restituire vare incongruenze nelle estrazioni . 
Ho provato a modificare la query implementandola con le clausole selettive da Te richieste ; ecco alcune possibili soluzioni :


SELECT DISTINCT  p.cognome , p.nome , p.nascita , p.sesso ,
 (SELECT Max( b.pr_descr) AS problema FROM cart_problemi b WHERE b. codice = t. codice AND ((b.cp_code ILIKE '46%' OR b.cp_code ILIKE '47%' OR b.cp_code ILIKE '48%' OR b.cp_code ILIKE '49%' OR b.cp_code ILIKE '50%' OR b.cp_code ILIKE '51%')
   /* AND b.data_open > (Today() - 5840)) */ AND  t.pb_code = b.pb_code ))  _problema_ ,
t.co_Des AS Farmaco, t.te_npezzi AS n_pezzi, t.data_open AS data_prescr, t.co_atc AS atc
FROM ((  cart_terap t  LEFT JOIN  cart_pazpbl b  USING( codice)) LEFT JOIN  pazienti p   USING( codice))  LEFT JOIN  nos_002 n USING( codice)
WHERE (t.co_atc ILIKE 'J01%' AND t.data_open BETWEEN '2017/01/01' AND '2017/12/31')
AND ((b.cp_code ILIKE '46%' OR b.cp_code ILIKE '47%' OR b.cp_code ILIKE '48%' OR b.cp_code ILIKE '49%' OR b.cp_code ILIKE '50%' OR b.cp_code ILIKE '51%') /* AND b.data_open > (Today() - 5840)*/ )
AND (n.pa_drevoca Is Null OR n.pa_drevoca > Today())
ORDER BY  _problema_ , t.co_atc , p.cognome, p.nome , t.data_open
                                                         oppure
SELECT DISTINCT  p.cognome , p.nome , p.nascita , p.sesso ,
 (SELECT b.nome_pbl AS problema FROM cart_pazpbl b WHERE b. codice = t. codice AND ((b.cp_code ILIKE '46%' OR b.cp_code ILIKE '47%' OR b.cp_code ILIKE '48%' OR b.cp_code ILIKE '49%' OR b.cp_code ILIKE '50%' OR b.cp_code ILIKE '51%')
  /* AND b.data_open > (Today() - 5840))  */ AND  t.pb_code = b.pb_code ))  _problema_ ,
t.co_Des AS Farmaco, t.te_Npezzi AS n_pezzi, t.data_open AS data_prescr, t.co_atc AS atc
FROM ((  cart_terap t  lEFT JOIN  cart_pazpbl b  USING( codice)) LEFT JOIN  pazienti p   USING( codice))  LEFT JOIN  nos_002 n USING( codice)
WHERE (t.co_atc ILIKE 'J01%' AND t.data_open BETWEEN '2017/01/01' AND '2017/12/31')
AND ((b.cp_code ILIKE '46%' OR b.cp_code ILIKE '47%' OR b.cp_code ILIKE '48%' OR b.cp_code ILIKE '49%' OR b.cp_code ILIKE '50%' OR b.cp_code ILIKE '51%')  /* AND b.data_open > (Today() - 5840)*/ )
AND (n.pa_drevoca Is Null OR n.pa_drevoca > Today())
ORDER BY _problema_ , t.co_atc , p.cognome, p.nome , t.data_open

                                              senza correlazione  fra  Problema  e  Terapia :
SELECT DISTINCT p.cognome, p.nome, p.nascita, p.sesso, b.nome_pbl AS problema, b.data_open AS Inizio_Problema, t.co_Des AS Farmaco, t.te_Npezzi AS n_pezzi, t.data_open AS data_prescr, t.co_atc AS atc
FROM ((  cart_terap t  LEFT JOIN  cart_pazpbl b  USING( codice)) LEFT JOIN  pazienti p   USING( codice))  LEFT JOIN  nos_002 n USING( codice)
WHERE (t.co_atc ILIKE 'J01%' AND t.data_open BETWEEN '2017/01/01' AND '2017/12/31')
AND ((b.cp_code ILIKE '46%' OR b.cp_code ILIKE '47%' OR b.cp_code ILIKE '48%' OR b.cp_code ILIKE '49%' OR b.cp_code ILIKE '50%' OR b.cp_code ILIKE '51%')  AND b.data_open > (Today() - 5840))
AND (n.pa_drevoca Is Null OR n.pa_drevoca > Today())
ORDER BY t.co_atc , p.cognome, p.nome , t.data_open


ma l' attendibilità dei vari set estratti  ( in teoria almeno il 1° e/o il 2° ),  va verificare con lunghe e laboriose analisi/verifiche; per query relativamente non semplici come queste, l' utilizzo di uno schema classico ( senza WITH )
si rivela quantomeno problematico .      Ti saluto ,  Sergio

PS : ... ora però sto cercando di fare i conti di spesa per ogni tipo di antibiotico ... sarebbe opportuno precisare meglio le condizioni di ricerca

Buongiorno, ho riprovato le estrazioni, sia la mia che le tue e estraggono tutte le terapie antibiotiche, ma non sembrano legate al problema perché estrae tutta la fosfomicina che ho controllato è legata a cistite icd9 595.0. 
Alcune righe non hanno il problema e controllando ho visto essere prescritte su altri problemi o senza problema dalla segretaria.

Per quanto riguarda la spesa volevo fare dei confronti di spesa fra le varie molecole per analizzarli nella AFT. es: amoxicillina verso amoxicillina/ac. clavulanico. 

Ti saluto
Massimo

massimo.meacci
Nuovo Membro
Nuovo Membro

Messaggi : 3
Punti : 4816
Voti per importanza dei messaggi : 0
Data d'iscrizione : 08.03.11

Torna in alto Andare in basso

Ricerca farmaci prescritti in base al problema codificato Empty Re: Ricerca farmaci prescritti in base al problema codificato

Messaggio  Cervino Lun 12 Mar 2018 - 23:44

massimo.meacci           1 ha scritto:
SELECT DISTINCT  p.cognome , p.nome , p.nascita , p.sesso ,
 (SELECT Max( b.pr_descr) AS problema FROM cart_problemi b WHERE b. codice = t. codice AND ((b.cp_code ILIKE '46%' OR b.cp_code ILIKE '47%' OR b.cp_code ILIKE '48%' OR b.cp_code ILIKE '49%' OR b.cp_code ILIKE '50%' OR b.cp_code ILIKE '51%')
   /* AND b.data_open > (Today() - 5840)) */ AND  t.pb_code = b.pb_code ))  _problema_ ,
t.co_Des AS Farmaco, t.te_npezzi AS n_pezzi, t.data_open AS data_prescr, t.co_atc AS atc
FROM ((  cart_terap t  LEFT JOIN  cart_pazpbl b  USING( codice)) LEFT JOIN  pazienti p   USING( codice))  LEFT JOIN  nos_002 n USING( codice)
WHERE (t.co_atc ILIKE 'J01%' AND t.data_open BETWEEN '2017/01/01' AND '2017/12/31')
AND ((b.cp_code ILIKE '46%' OR b.cp_code ILIKE '47%' OR b.cp_code ILIKE '48%' OR b.cp_code ILIKE '49%' OR b.cp_code ILIKE '50%' OR b.cp_code ILIKE '51%') /* AND b.data_open > (Today() - 5840)*/ )
AND (n.pa_drevoca Is Null OR n.pa_drevoca > Today())
ORDER BY  _problema_ , t.co_atc , p.cognome, p.nome , t.data_open
                                                         oppure     2
SELECT DISTINCT  p.cognome , p.nome , p.nascita , p.sesso ,
 (SELECT b.nome_pbl AS problema FROM cart_pazpbl b WHERE b. codice = t. codice AND ((b.cp_code ILIKE '46%' OR b.cp_code ILIKE '47%' OR b.cp_code ILIKE '48%' OR b.cp_code ILIKE '49%' OR b.cp_code ILIKE '50%' OR b.cp_code ILIKE '51%')
  /* AND b.data_open > (Today() - 5840))  */ AND  t.pb_code = b.pb_code ))  _problema_ ,
t.co_Des AS Farmaco, t.te_Npezzi AS n_pezzi, t.data_open AS data_prescr, t.co_atc AS atc
FROM ((  cart_terap t  lEFT JOIN  cart_pazpbl b  USING( codice)) LEFT JOIN  pazienti p   USING( codice))  LEFT JOIN  nos_002 n USING( codice)
WHERE (t.co_atc ILIKE 'J01%' AND t.data_open BETWEEN '2017/01/01' AND '2017/12/31')
AND ((b.cp_code ILIKE '46%' OR b.cp_code ILIKE '47%' OR b.cp_code ILIKE '48%' OR b.cp_code ILIKE '49%' OR b.cp_code ILIKE '50%' OR b.cp_code ILIKE '51%')  /* AND b.data_open > (Today() - 5840)*/ )
AND (n.pa_drevoca Is Null OR n.pa_drevoca > Today())
ORDER BY _problema_ , t.co_atc , p.cognome, p.nome , t.data_open

                                              senza correlazione  fra  Problema  e  Terapia :   3
SELECT DISTINCT p.cognome, p.nome, p.nascita, p.sesso, b.nome_pbl AS problema, b.data_open AS Inizio_Problema, t.co_Des AS Farmaco, t.te_Npezzi AS n_pezzi, t.data_open AS data_prescr, t.co_atc AS atc
FROM ((  cart_terap t  LEFT JOIN  cart_pazpbl b  USING( codice)) LEFT JOIN  pazienti p   USING( codice))  LEFT JOIN  nos_002 n USING( codice)
WHERE (t.co_atc ILIKE 'J01%' AND t.data_open BETWEEN '2017/01/01' AND '2017/12/31')
AND ((b.cp_code ILIKE '46%' OR b.cp_code ILIKE '47%' OR b.cp_code ILIKE '48%' OR b.cp_code ILIKE '49%' OR b.cp_code ILIKE '50%' OR b.cp_code ILIKE '51%')  AND b.data_open > (Today() - 5840))
AND (n.pa_drevoca Is Null OR n.pa_drevoca > Today())
ORDER BY t.co_atc , p.cognome, p.nome , t.data_open


Buongiorno, ho riprovato le estrazioni, sia la mia che le tue e estraggono tutte le terapie antibiotiche, ma non sembrano legate al problema perché estrae tutta la fosfomicina che ho controllato è legata a cistite icd9 595.0. Alcune righe non hanno il problema e controllando ho visto essere prescritte su altri problemi o senza problema dalla segretaria.Per quanto riguarda la spesa volevo fare dei confronti di spesa fra le varie molecole per analizzarli nella AFT. es: amoxicillina verso amoxicillina/ac. clavulanico.   Ti saluto  Massimo
Il risultato è tuttavia quello previsto in base alle condizioni di ricerca : le query 1 e 2 estraggono ( con marginali differenze ) l' antibiotico e l' eventuale problema collegato , se ricade nel range considerato   ((b.cp_code ILIKE '46%' OR b.cp_code ILIKE '47%' OR b.cp_code ILIKE '48%' OR b.cp_code ILIKE '49%' OR b.cp_code ILIKE '50%' OR b.cp_code ILIKE '51%')  e le righe con il problema desiderato , vengono ordinate per prime ( ovviamente se l ' antibiotico è stato prescritto x un altro problema , il relativo campo rimane vuoto ) .
Per ricerche mirate di tal genere , sarebbe meglio utilizzare il metodo selettivo a cascata  ( tramite l' istruzione WITH )
Invece nella 3° query manca la correlazione  fra  Problema  e  Terapia ( è a titolo di esempio ma probabilmente di scarsa utilità )
Ti saluto ,  Sergio

Cervino
Membro Junior
Membro Junior

Messaggi : 245
Punti : 5084
Voti per importanza dei messaggi : 22
Data d'iscrizione : 03.03.11
Età : 69
Località : Orzivecchi (BS)

Torna in alto Andare in basso

Ricerca farmaci prescritti in base al problema codificato Empty Re: Ricerca farmaci prescritti in base al problema codificato

Messaggio  Contenuto sponsorizzato


Contenuto sponsorizzato


Torna in alto Andare in basso

Torna in alto

- Argomenti simili

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