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

Estrazione progetto ASL

Andare in basso

Estrazione progetto ASL

Messaggio  drtulino il Gio 8 Set 2011 - 11:02

Mi servirebbe una query con le seguente caratteristiche di pazienti inseriti in un dato registro. L'ho creata da Milleutilità, suddividendola in tre parti, ma mi piacerebbe averla in un'unica soluzione da poter trasmettere anche agli altri Colleghi per partecipano al progetto.

DATI DA ESTRARRE PER IL DIABETE pazienti inseriti nel registro DIABETE (PERIODO 01/03/2011-31/05/2011)

1) numero dei pazienti arruolati che hanno fatto almeno una rilevazione di glicata nei mesi successivi alla data di avvio del modulo
2) numero dei pazienti arruolati che hanno fatto almeno una rilevazione di glicata nei mesi successivi alla data di avvio del modulo con valore <7
3) numero dei pazienti arruolati che hanno fatto almeno una rilevazione di glicata nei mesi successivi alla data di avvio del modulo con valore <7 e non in terapia

Grazie a quanti mi aiuteranno.

_________________
Renato Tulino
MMG Monte Argentario (GR)
Facebook Millewin: https://www.facebook.com/groups/utentimillewin/
Twitter: @RenatoTulino
drtulino
drtulino
Moderatore
Moderatore

Messaggi : 1833
Punti : 5157
Voti per importanza dei messaggi : 91
Data d'iscrizione : 20.02.11
Età : 55
Località : Monte Argentario (GR)

Visualizza il profilo https://www.facebook.com/groups/utentimillewin/

Torna in alto Andare in basso

Re: Estrazione progetto ASL

Messaggio  drtulino il Sab 10 Set 2011 - 8:51

drtulino ha scritto:Mi servirebbe una query con le seguente caratteristiche di pazienti inseriti in un dato registro. L'ho creata da Milleutilità, suddividendola in tre parti, ma mi piacerebbe averla in un'unica soluzione da poter trasmettere anche agli altri Colleghi per partecipano al progetto.

DATI DA ESTRARRE PER IL DIABETE pazienti inseriti nel registro DIABETE (PERIODO 01/03/2011-31/05/2011)

1) numero dei pazienti arruolati che hanno fatto almeno una rilevazione di glicata nei mesi successivi alla data di avvio del modulo
2) numero dei pazienti arruolati che hanno fatto almeno una rilevazione di glicata nei mesi successivi alla data di avvio del modulo con valore <7
3) numero dei pazienti arruolati che hanno fatto almeno una rilevazione di glicata nei mesi successivi alla data di avvio del modulo con valore <7 e non in terapia

Grazie a quanti mi aiuteranno.

Dalla mancanza di risposte, deduco che non si possa fare un'unica query.

_________________
Renato Tulino
MMG Monte Argentario (GR)
Facebook Millewin: https://www.facebook.com/groups/utentimillewin/
Twitter: @RenatoTulino
drtulino
drtulino
Moderatore
Moderatore

Messaggi : 1833
Punti : 5157
Voti per importanza dei messaggi : 91
Data d'iscrizione : 20.02.11
Età : 55
Località : Monte Argentario (GR)

Visualizza il profilo https://www.facebook.com/groups/utentimillewin/

Torna in alto Andare in basso

Re: Estrazione progetto ASL

Messaggio  draleo83 il Sab 10 Set 2011 - 10:53

drtulino ha scritto:
drtulino ha scritto:Mi servirebbe una query con le seguente caratteristiche di pazienti inseriti in un dato registro. L'ho creata da Milleutilità, suddividendola in tre parti, ma mi piacerebbe averla in un'unica soluzione da poter trasmettere anche agli altri Colleghi per partecipano al progetto.

DATI DA ESTRARRE PER IL DIABETE pazienti inseriti nel registro DIABETE (PERIODO 01/03/2011-31/05/2011)

1) numero dei pazienti arruolati che hanno fatto almeno una rilevazione di glicata nei mesi successivi alla data di avvio del modulo
2) numero dei pazienti arruolati che hanno fatto almeno una rilevazione di glicata nei mesi successivi alla data di avvio del modulo con valore <7
3) numero dei pazienti arruolati che hanno fatto almeno una rilevazione di glicata nei mesi successivi alla data di avvio del modulo con valore <7 e non in terapia

Grazie a quanti mi aiuteranno.

Dalla mancanza di risposte, deduco che non si possa fare un'unica query.



Non demordere. E' un pò difficile ma... Aspetta un'oretta



Leonardo Draghini
draleo83
draleo83
Membro Junior
Membro Junior

Messaggi : 217
Punti : 3228
Voti per importanza dei messaggi : 24
Data d'iscrizione : 21.02.11

Visualizza il profilo

Torna in alto Andare in basso

Re: Estrazione progetto ASL

Messaggio  GiampiMaz il Sab 10 Set 2011 - 11:19

Ciao
ti rispondo solo ora perchè ho lavori vari in corso. Naturalmente si può fare, alla brutta con UNION ALL, o con subquery (ho fatto un tentativo ma mi vengono cose strane...) Se mi precisi cosa intendi per data avvio del modulo ti posso postare una bozza.
giampiero
GiampiMaz
GiampiMaz
Membro Junior
Membro Junior

Messaggi : 122
Punti : 3119
Voti per importanza dei messaggi : 33
Data d'iscrizione : 20.02.11

Visualizza il profilo

Torna in alto Andare in basso

Re: Estrazione progetto ASL

Messaggio  draleo83 il Sab 10 Set 2011 - 11:59

drtulino ha scritto:Mi servirebbe una query con le seguente caratteristiche di pazienti inseriti in un dato registro. L'ho creata da Milleutilità, suddividendola in tre parti, ma mi piacerebbe averla in un'unica soluzione da poter trasmettere anche agli altri Colleghi per partecipano al progetto.

DATI DA ESTRARRE PER IL DIABETE pazienti inseriti nel registro DIABETE (PERIODO 01/03/2011-31/05/2011)

1) numero dei pazienti arruolati che hanno fatto almeno una rilevazione di glicata nei mesi successivi alla data di avvio del modulo
2) numero dei pazienti arruolati che hanno fatto almeno una rilevazione di glicata nei mesi successivi alla data di avvio del modulo con valore <7
3) numero dei pazienti arruolati che hanno fatto almeno una rilevazione di glicata nei mesi successivi alla data di avvio del modulo con valore <7 e non in terapia

Grazie a quanti mi aiuteranno.



ecco 2 query che dovrebbero fare quanto richiesto (se ho capito bene quello che vuoi)

Io non ho mai utilizzato i registri e, quindi, ne ho creato appositamente uno con 4-5 paz

per provare le query e ho utilizzato quello chiamato Diabete tipo 2 , che è codificato come REG0009

Se però tu metti i diabetici in un altro registro, allora nella query devi sostituire questo codice

con quello usato da te

La seguente conta quanti diabetici arruolati nel registro hanno HB1 <=7 oppure > 7 e quanti sono in terapia oppure no;

-------------------------------------------------------

SELECT
IF a. RisultN <=7 and a.codice IN
(select t.codice from V_terapie t Where t.atc like 'A10%' AND t.codice=a.codice AND
Count(distinct datavisita ) > 0)
THEN '1: <= 7 in terapia '
ELSE IF a. RisultN <=7 and a.codice NOT IN
(SELECT t.codice from V_terapie t Where ATC like 'A10%'and t.codice=a.codice AND
Count(distinct datavisita )> 0)
THEN '2: <= 7 senza terapia '
ELSE IF a. RisultN > 7 and a.codice IN
(select t.codice from V_terapie t Where t.atc like 'A10%' AND t.codice=a.codice AND
Count(distinct datavisita ) > 0)
THEN '3: > 7 in terapia'
ELSE IF a. RisultN > 7 and a.codice NOT IN
(select t.codice from V_terapie t Where t.atc like 'A10%' AND t.codice=a.codice AND
Count(distinct datavisita ) > 0)
THEN '4: > 7 senza terapia'
ENDIF
ENDIF
ENDIF
ENDIF
as emog_glic,
count(a.codice) as num_paz
FROM V_accertamenti a
where a.accertamento = 'emoglobina glicata' and a. risultN is not null
and datavisita =(SELECT MAX(datavisita) FROM v_accertamenti a1
WHERE a1.accertamento = 'emoglobina glicata' AND
a1.codice =a.codice AND a1.risultN is not null )
and a.codice IN (select pip.codice from cart_concessioni_pip pip
where pip.Incent_Code like 'REG0009')
GROUP BY emog_glic
UNION
SELECT 'arruolati', count(codice)as num_paz
from cart_concessioni_pip pip
where pip.Incent_Code like 'REG0009'


order by 1

----------------------------------------------------------------------

La seconda serve per una controprova:estrae i nomi dei paz indicando il val dell'emoglobina glic e se sono in terapia

----------------------------------------------------------------------

SELECT DISTINCT a.cognome,a.nome,a. accertamento,
(SELECT MAX(datavisita) FROM v_accertamenti a1 WHERE a1.accertamento = 'emoglobina glicata' AND a1.codice =a.codice AND
a1.risultN is not null ) AS ult_data,
(SELECT risultS from v_accertamenti a1 WHERE accertamento = 'emoglobina glicata' AND
a1. risultN is not null AND
a1.datavisita = ult_data AND a1.codice =a.codice) AS ult_val,
(select if Count(distinct t.datavisita )>0 then 'SI' Else 'NO' ENDIF from V_terapie t Where t.atc like 'A10%' AND t.codice=a.codice)as terap
FROM V_accertamenti a
where a.accertamento = 'emoglobina glicata'
AND a.risultN is not null
and a.codice IN (select pip.codice
from cart_concessioni_pip pip
where pip.Incent_Code like 'REG0009')
order by 1,2

----------------------------------------------------------------

Io preferisco usare le viste (quando è possibile): sono più facili da realizzare, anche se più lente; però preferisco attendere un minuto in più al momento del lancio,piuttosto che ammattirmi per 2 ore nel trovare i nomi dei campi da utilizzare per gli archivi



Leonardo Draghini



PS: mi dite come si fa a formattare decentemente quello che scrivo? Le query andrebbero formattate decentemente (con i rientri giusti ecc)per facilitarne la comprensione e la lettura;cosa che quì non riesco a fare
draleo83
draleo83
Membro Junior
Membro Junior

Messaggi : 217
Punti : 3228
Voti per importanza dei messaggi : 24
Data d'iscrizione : 21.02.11

Visualizza il profilo

Torna in alto Andare in basso

Re: Estrazione progetto ASL

Messaggio  draleo83 il Sab 10 Set 2011 - 12:07

Mi sono dimenticato di dire che le query estraggono SOLO i diabetici (iscritti nel registro) che hanno ALMENO una misurazione dell'emoglobina glicata nel periodo prescelto

Quelli che non hanno tale misurazione non vengono estratti (visto che -mi è sembrato di capire- Renato vuole dividerli in base al valore dell'Hbglicata : se questo valore non è stato rilevato come fai a collocarli nella fascia giusta ?



Leonardo Draghini
draleo83
draleo83
Membro Junior
Membro Junior

Messaggi : 217
Punti : 3228
Voti per importanza dei messaggi : 24
Data d'iscrizione : 21.02.11

Visualizza il profilo

Torna in alto Andare in basso

Re: Estrazione progetto ASL

Messaggio  drtulino il Sab 10 Set 2011 - 22:22

GiampiMaz ha scritto:Ciao
ti rispondo solo ora perchè ho lavori vari in corso. Naturalmente si può fare, alla brutta con UNION ALL, o con subquery (ho fatto un tentativo ma mi vengono cose strane...) Se mi precisi cosa intendi per data avvio del modulo ti posso postare una bozza.
giampiero

la data in questo caso è dal 01/03/2011 al 31/05/2011, però mi viene permesso di selezionarla da "Centrale statistiche" insieme al registro.

_________________
Renato Tulino
MMG Monte Argentario (GR)
Facebook Millewin: https://www.facebook.com/groups/utentimillewin/
Twitter: @RenatoTulino
drtulino
drtulino
Moderatore
Moderatore

Messaggi : 1833
Punti : 5157
Voti per importanza dei messaggi : 91
Data d'iscrizione : 20.02.11
Età : 55
Località : Monte Argentario (GR)

Visualizza il profilo https://www.facebook.com/groups/utentimillewin/

Torna in alto Andare in basso

Re: Estrazione progetto ASL

Messaggio  drtulino il Sab 10 Set 2011 - 22:25

draleo83 ha scritto:La seconda serve per una controprova:estrae i nomi dei paz indicando il val dell'emoglobina glic e se sono in terapia
SELECT DISTINCT a.cognome,a.nome,a. accertamento,
(SELECT MAX(datavisita) FROM v_accertamenti a1 WHERE a1.accertamento = 'emoglobina glicata' AND a1.codice =a.codice AND
a1.risultN is not null ) AS ult_data,
(SELECT risultS from v_accertamenti a1 WHERE accertamento = 'emoglobina glicata' AND
a1. risultN is not null AND
a1.datavisita = ult_data AND a1.codice =a.codice) AS ult_val,
(select if Count(distinct t.datavisita )>0 then 'SI' Else 'NO' ENDIF from V_terapie t Where t.atc like 'A10%' AND t.codice=a.codice)as terap
FROM V_accertamenti a
where a.accertamento = 'emoglobina glicata'
AND a.risultN is not null
and a.codice IN (select pip.codice
from cart_concessioni_pip pip
where pip.Incent_Code like 'REG0009')
order by 1,2



Questa mi va benissimo ed il registro lo posso selezionare quando lancio la query da Centrale statistiche.

Grazie Leo, sei il solito GRANDE.

_________________
Renato Tulino
MMG Monte Argentario (GR)
Facebook Millewin: https://www.facebook.com/groups/utentimillewin/
Twitter: @RenatoTulino
drtulino
drtulino
Moderatore
Moderatore

Messaggi : 1833
Punti : 5157
Voti per importanza dei messaggi : 91
Data d'iscrizione : 20.02.11
Età : 55
Località : Monte Argentario (GR)

Visualizza il profilo https://www.facebook.com/groups/utentimillewin/

Torna in alto Andare in basso

Re: Estrazione progetto ASL

Messaggio  GiampiMaz il Sab 10 Set 2011 - 22:51

Senza voler entrare in concorrenza col Grande Draghini, ti invio questa query che usa le tabelle e quindi purtroppo non risente dei settaggi di centrale statistiche, gli eventuali cambiamenti vanno fatti sulla query stessa.
Usa il registro Diabete mellito, se ti serve un altro occorre modificare la query.
Conta i pazienti iscritti al registro tra le date che hai indicate e quelli che hanno eseguito hb glicata sempre tra le date indicate ecc.
sostituire in ogni query XXXXX col codice per la medicina di gruppo o togliere la riga.
La tecnica molto brutale è di fare le singole query e poi unirle, cercherò di studiare quella di Draghini per imparare come fa ad incolonnare i risultati Shocked Shocked .

giampiero


SELECT CAST ('2011-03-01' AS DATE) AS inizio, CAST ('2011-05-31' AS DATE) AS fine, 'Totale' as nome, count (p.codice) as ris
FROM pazienti p, nos_002 n,cart_concessioni_pip pip
WHERE
p.codice=n.codice AND p.codice=pip.codice
AND pip.Incent_Code like 'REG0015'
AND data_autorizzazione between inizio and fine
AND n.pa_medi = 'XXXXXX'

UNION ALL
SELECT CAST ('2011-03-01' AS DATE) AS inizio, CAST ('2011-05-31' AS DATE) AS fine, 'Fatta Hb-gl' as nome, count (p.codice) as ris
FROM pazienti p, nos_002 n,cart_concessioni_pip pip,cart_accert a
WHERE
p.codice=n.codice AND p.codice=pip.codice and p.codice=a.codice
AND a.ac_code like ' 703'
AND a.data_open between inizio and fine
AND ( a.ac_val is not null OR a.ac_val <>'')
AND pip.Incent_Code like 'REG0015'
AND data_autorizzazione between inizio and fine
AND n.pa_medi = 'XXXXXX'


UNION ALL
SELECT CAST ('2011-03-01' AS DATE) AS inizio, CAST ('2011-05-31' AS DATE) AS fine, ' Hb-gl-min-7' as nome, count (p.codice) as ris
FROM pazienti p, nos_002 n,cart_concessioni_pip pip,cart_accert a
WHERE
p.codice=n.codice AND p.codice=pip.codice and p.codice=a.codice
AND a.ac_code like ' 703'
AND a.data_open between inizio and fine
AND a.ac_val <= 7
AND pip.Incent_Code like 'REG0015'
AND data_autorizzazione between inizio and fine
AND n.pa_medi = 'XXXXXX'


UNION ALL
SELECT CAST ('2011-03-01' AS DATE) AS inizio, CAST ('2011-05-31' AS DATE) AS fine, ' Hb-gl-min-7-non-ter' as nome, count (p.codice) as ris
FROM pazienti p, nos_002 n,cart_concessioni_pip pip,cart_accert a
WHERE
p.codice=n.codice AND p.codice=pip.codice and p.codice=a.codice
AND a.ac_code like ' 703'
AND a.data_open between inizio and fine
AND a.ac_val <= 7
AND p.codice NOT IN (select ca.codice from cart_terap ca where ca.co_atc like 'A10%')
AND pip.Incent_Code like 'REG0015'
AND data_autorizzazione between inizio and fine
AND n.pa_medi = 'XXXXX'
GiampiMaz
GiampiMaz
Membro Junior
Membro Junior

Messaggi : 122
Punti : 3119
Voti per importanza dei messaggi : 33
Data d'iscrizione : 20.02.11

Visualizza il profilo

Torna in alto Andare in basso

Re: Estrazione progetto ASL

Messaggio  draleo83 il Dom 11 Set 2011 - 12:56

Beh...una disattenzione (che può falsare il num degli arruolati) nella prima query l'ho commessa: non ho considerato che esistono le medicine di gruppo . Quindi l'ultima parte della prima query va sostituita con

UNION
SELECT 'arruolati', count(distinct codice)as num_paz
from cart_concessioni_pip pip
where pip.Incent_Code like 'REG0009'
AND pip. userid='XXXXXX'

Dove XXXXX è il proprio user id

nella versione precedente invece venivano contati gli arruolati del registro di tutti i medici.

Ripeto inoltre che io ho utilizzato per provare le query il registro :chiamato Diabete tipo 2 , che è codificato come REG0009

Invece se voi utilizzate il registro chiamato : Diabete Mellito (per interderci quello che è sotto il registro BPCO)

allora dovete sostituire in tutte le query il codice REG0009 con REG0015



Leonardo Draghini
draleo83
draleo83
Membro Junior
Membro Junior

Messaggi : 217
Punti : 3228
Voti per importanza dei messaggi : 24
Data d'iscrizione : 21.02.11

Visualizza il profilo

Torna in alto Andare in basso

Re: Estrazione progetto ASL

Messaggio  GiampiMaz il Lun 12 Set 2011 - 14:49

La fretta è cattiva consigliera, e rivedendo la mia query con calma vi ho trovati diversi errori. Spero di aver corretto i più grossi.
Ho rispettato le clausole che hai indicato, ma mi sembra riduttivo cercare i pazienti che hanno fatto l'Hb glicata NEL RISTRETTO LASSO DI TEMPO 1/3 - 31/5 (questo mi è sembrato tu abbia chiesto).
ciao
giampiero


SELECT CAST ('2011-03-01' AS DATE) AS inizio, CAST ('2011-05-31' AS DATE) AS fine, 'Totale' as nome, count (p.codice) as ris
FROM pazienti p, nos_002 n,cart_concessioni_pip pip
WHERE
p.codice=n.codice AND p.codice=pip.codice
AND pip.Incent_Code like 'REG0015'
AND data_autorizzazione between inizio and fine
AND n.pa_medi = 'XXXXX'

UNION ALL
SELECT CAST ('2011-03-01' AS DATE) AS inizio, CAST ('2011-05-31' AS DATE) AS fine, 'Fatta Hb-gl' as nome, count (distinct p.codice) as ris
FROM pazienti p, nos_002 n,cart_concessioni_pip pip,cart_accert a
WHERE
p.codice=n.codice AND p.codice=pip.codice and p.codice=a.codice
AND a.ac_code like ' 703'
AND a.data_open between inizio and fine
AND ( a.ac_val is not null OR a.ac_val <>'')
AND pip.Incent_Code like 'REG0015'
AND data_autorizzazione between inizio and fine
AND n.pa_medi = 'XXXXX'


UNION ALL
SELECT CAST ('2011-03-01' AS DATE) AS inizio, CAST ('2011-05-31' AS DATE) AS fine, ' Hb-gl-min=7' as nome, count (distinct p.codice) as ris
FROM pazienti p, nos_002 n,cart_concessioni_pip pip,cart_accert a
WHERE
p.codice=n.codice AND p.codice=pip.codice and p.codice=a.codice
AND a.ac_code like ' 703'

And a.ac_val Is Not Null And Not Exists (Select a1.codice From cart_accert a1 Where a1.codice = a.codice And a1.ac_code Like ' 703' And a1.data_open < fine And (a1.data_open > a.data_open Or (a1.data_open = a.data_open And a1.rowid > a.rowid)) And a1.ac_val Is Not Null) And a.data_open between inizio and fine

AND a.ac_val <= '7'
AND pip.Incent_Code like 'REG0015'
AND data_autorizzazione between inizio and fine
AND n.pa_medi = 'XXXXXX'


UNION ALL
SELECT CAST ('2011-03-01' AS DATE) AS inizio, CAST ('2011-05-31' AS DATE) AS fine, ' Hb-gl-min=7-non-ter' as nome, count (distinct p.codice) as ris
FROM pazienti p, nos_002 n,cart_concessioni_pip pip,cart_accert a
WHERE
p.codice=n.codice AND p.codice=pip.codice and p.codice=a.codice
AND a.ac_code like ' 703'

And a.ac_val Is Not Null And Not Exists (Select a1.codice From cart_accert a1 Where a1.codice = a.codice And a1.ac_code Like ' 703' And a1.data_open < fine And (a1.data_open > a.data_open Or (a1.data_open = a.data_open And a1.rowid > a.rowid)) And a1.ac_val Is Not Null) And a.data_open between inizio and fine

AND a.ac_val <='7'
AND p.codice NOT IN (select ca.codice from cart_terap ca where ca.co_atc like 'A10%')
AND pip.Incent_Code like 'REG0015'
AND data_autorizzazione between inizio and fine
AND n.pa_medi = 'XXXXX'
GiampiMaz
GiampiMaz
Membro Junior
Membro Junior

Messaggi : 122
Punti : 3119
Voti per importanza dei messaggi : 33
Data d'iscrizione : 20.02.11

Visualizza il profilo

Torna in alto Andare in basso

Re: Estrazione progetto ASL

Messaggio  drtulino il Mar 13 Set 2011 - 15:23

GiampiMaz ha scritto:La fretta è cattiva consigliera, e rivedendo la mia query con calma vi ho trovati diversi errori. Spero di aver corretto i più grossi.
Ho rispettato le clausole che hai indicato, ma mi sembra riduttivo cercare i pazienti che hanno fatto l'Hb glicata NEL RISTRETTO LASSO DI TEMPO 1/3 - 31/5 (questo mi è sembrato tu abbia chiesto).
ciao
giampiero


SELECT CAST ('2011-03-01' AS DATE) AS inizio, CAST ('2011-05-31' AS DATE) AS fine, 'Totale' as nome, count (p.codice) as ris
FROM pazienti p, nos_002 n,cart_concessioni_pip pip
WHERE
p.codice=n.codice AND p.codice=pip.codice
AND pip.Incent_Code like 'REG0015'
AND data_autorizzazione between inizio and fine
AND n.pa_medi = 'XXXXX'

UNION ALL
SELECT CAST ('2011-03-01' AS DATE) AS inizio, CAST ('2011-05-31' AS DATE) AS fine, 'Fatta Hb-gl' as nome, count (distinct p.codice) as ris
FROM pazienti p, nos_002 n,cart_concessioni_pip pip,cart_accert a
WHERE
p.codice=n.codice AND p.codice=pip.codice and p.codice=a.codice
AND a.ac_code like ' 703'
AND a.data_open between inizio and fine
AND ( a.ac_val is not null OR a.ac_val <>'')
AND pip.Incent_Code like 'REG0015'
AND data_autorizzazione between inizio and fine
AND n.pa_medi = 'XXXXX'


UNION ALL
SELECT CAST ('2011-03-01' AS DATE) AS inizio, CAST ('2011-05-31' AS DATE) AS fine, ' Hb-gl-min=7' as nome, count (distinct p.codice) as ris
FROM pazienti p, nos_002 n,cart_concessioni_pip pip,cart_accert a
WHERE
p.codice=n.codice AND p.codice=pip.codice and p.codice=a.codice
AND a.ac_code like ' 703'

And a.ac_val Is Not Null And Not Exists (Select a1.codice From cart_accert a1 Where a1.codice = a.codice And a1.ac_code Like ' 703' And a1.data_open < fine And (a1.data_open > a.data_open Or (a1.data_open = a.data_open And a1.rowid > a.rowid)) And a1.ac_val Is Not Null) And a.data_open between inizio and fine

AND a.ac_val <= '7'
AND pip.Incent_Code like 'REG0015'
AND data_autorizzazione between inizio and fine
AND n.pa_medi = 'XXXXXX'


UNION ALL
SELECT CAST ('2011-03-01' AS DATE) AS inizio, CAST ('2011-05-31' AS DATE) AS fine, ' Hb-gl-min=7-non-ter' as nome, count (distinct p.codice) as ris
FROM pazienti p, nos_002 n,cart_concessioni_pip pip,cart_accert a
WHERE
p.codice=n.codice AND p.codice=pip.codice and p.codice=a.codice
AND a.ac_code like ' 703'

And a.ac_val Is Not Null And Not Exists (Select a1.codice From cart_accert a1 Where a1.codice = a.codice And a1.ac_code Like ' 703' And a1.data_open < fine And (a1.data_open > a.data_open Or (a1.data_open = a.data_open And a1.rowid > a.rowid)) And a1.ac_val Is Not Null) And a.data_open between inizio and fine

AND a.ac_val <='7'
AND p.codice NOT IN (select ca.codice from cart_terap ca where ca.co_atc like 'A10%')
AND pip.Incent_Code like 'REG0015'
AND data_autorizzazione between inizio and fine
AND n.pa_medi = 'XXXXX'

L'estrazione mi dà zero risultati, mentre nell'archivio ne ho 18 pazienti nel range di tempo tra il 1/3/2011 ed il 31/3/2011.

_________________
Renato Tulino
MMG Monte Argentario (GR)
Facebook Millewin: https://www.facebook.com/groups/utentimillewin/
Twitter: @RenatoTulino
drtulino
drtulino
Moderatore
Moderatore

Messaggi : 1833
Punti : 5157
Voti per importanza dei messaggi : 91
Data d'iscrizione : 20.02.11
Età : 55
Località : Monte Argentario (GR)

Visualizza il profilo https://www.facebook.com/groups/utentimillewin/

Torna in alto Andare in basso

Re: Estrazione progetto ASL

Messaggio  GiampiMaz il Mar 13 Set 2011 - 18:23

Ciao
in quale registro hai iscritto i pazienti?
hai sostituito a XXXX il tuo codice di medicina di gruppo?
controlla poi scrivi
giampiero
GiampiMaz
GiampiMaz
Membro Junior
Membro Junior

Messaggi : 122
Punti : 3119
Voti per importanza dei messaggi : 33
Data d'iscrizione : 20.02.11

Visualizza il profilo

Torna in alto Andare in basso

Re: Estrazione progetto ASL

Messaggio  drtulino il Mar 13 Set 2011 - 23:43

GiampiMaz ha scritto:Ciao
in quale registro hai iscritto i pazienti?
hai sostituito a XXXX il tuo codice di medicina di gruppo?
controlla poi scrivi
giampiero

Ciao Giampiero, ho inserito il mio codice medico, ma non capisco da dove vedere il numero di registro?

_________________
Renato Tulino
MMG Monte Argentario (GR)
Facebook Millewin: https://www.facebook.com/groups/utentimillewin/
Twitter: @RenatoTulino
drtulino
drtulino
Moderatore
Moderatore

Messaggi : 1833
Punti : 5157
Voti per importanza dei messaggi : 91
Data d'iscrizione : 20.02.11
Età : 55
Località : Monte Argentario (GR)

Visualizza il profilo https://www.facebook.com/groups/utentimillewin/

Torna in alto Andare in basso

Re: Estrazione progetto ASL

Messaggio  GiampiMaz il Mer 14 Set 2011 - 8:02

se non sei in medicina di gruppo puoi togliere le righe con XXXXX
in ogni modo il Codice per la medicina di gruppo lo trovi in Centrale di controllo / RRS locale / visualizza CodiceMG

giampiero
GiampiMaz
GiampiMaz
Membro Junior
Membro Junior

Messaggi : 122
Punti : 3119
Voti per importanza dei messaggi : 33
Data d'iscrizione : 20.02.11

Visualizza il profilo

Torna in alto Andare in basso

Re: Estrazione progetto ASL

Messaggio  GiampiMaz il Mer 14 Set 2011 - 8:09

il registro dammi il nome esatto o vedi questi sono i codici


REG0001 progetto MITT
REG0002 TAO (Terapia Anticoagulante Orale)
REG0003 Registro Personale N° 1
REG0004 Registro Personale N° 2
REG0005 Registro Personale N° 3
REG0006 Registro Personale N° 4
REG0007 progetto SIR
REG0008 Diabete tipo 1
REG0009 Diabete tipo 2
REG0010 Scompenso cardiaco
REG0011 Vaccinazione influenza
REG0012 Ipertensione
REG0013 BPCO
REG0014 Sindrome dismetabolica
REG0015 Diabete mellito
REG0016 Rischio cardiovascolare elevato
REG0017 Angioplastica coronarico o Bypass
REG0018 Protesi ginocchio
REG0019 Protesi anca
REG0020 Protesi valvole cardiache
REG0021 Pazienti fragili
REG0022 K prostata
REG0023 K mammella
REG0024 K
REG0025 Report da inviare ad ASL
REG0026 Anagrafiche non presenti nell'archivio ASL
REG0027 Diabetico in gestione integrata
REG0028 Nuove anagrafiche inserite dall'archivio ASL
REG0029 Anagrafiche variate dall'archivio ASL
GiampiMaz
GiampiMaz
Membro Junior
Membro Junior

Messaggi : 122
Punti : 3119
Voti per importanza dei messaggi : 33
Data d'iscrizione : 20.02.11

Visualizza il profilo

Torna in alto Andare in basso

Re: Estrazione progetto ASL

Messaggio  drtulino il Mer 14 Set 2011 - 12:19

GiampiMaz ha scritto:il registro dammi il nome esatto o vedi questi sono i codici


REG0001 progetto MITT
REG0002 TAO (Terapia Anticoagulante Orale)
REG0003 Registro Personale N° 1
REG0004 Registro Personale N° 2
REG0005 Registro Personale N° 3
REG0006 Registro Personale N° 4
REG0007 progetto SIR
REG0008 Diabete tipo 1
REG0009 Diabete tipo 2
REG0010 Scompenso cardiaco
REG0011 Vaccinazione influenza
REG0012 Ipertensione
REG0013 BPCO
REG0014 Sindrome dismetabolica
REG0015 Diabete mellito
REG0016 Rischio cardiovascolare elevato
REG0017 Angioplastica coronarico o Bypass
REG0018 Protesi ginocchio
REG0019 Protesi anca
REG0020 Protesi valvole cardiache
REG0021 Pazienti fragili
REG0022 K prostata
REG0023 K mammella
REG0024 K
REG0025 Report da inviare ad ASL
REG0026 Anagrafiche non presenti nell'archivio ASL
REG0027 Diabetico in gestione integrata
REG0028 Nuove anagrafiche inserite dall'archivio ASL
REG0029 Anagrafiche variate dall'archivio ASL



Il registro in questione è il REG0009 Diabete tipo 2, ma Ti premetto che avevo già sostituito questo numero (ricavato dalla query di Leonardo) e sostituito con quello della Tua query, ma il risultato che mi dà è sempre zero. Sicuramente sbaglio da qualche parte, ma non riesco a capire dove.

Grazie davvero per il tempo che mi stai dedicando.

_________________
Renato Tulino
MMG Monte Argentario (GR)
Facebook Millewin: https://www.facebook.com/groups/utentimillewin/
Twitter: @RenatoTulino
drtulino
drtulino
Moderatore
Moderatore

Messaggi : 1833
Punti : 5157
Voti per importanza dei messaggi : 91
Data d'iscrizione : 20.02.11
Età : 55
Località : Monte Argentario (GR)

Visualizza il profilo https://www.facebook.com/groups/utentimillewin/

Torna in alto Andare in basso

Re: Estrazione progetto ASL

Messaggio  GiampiMaz il Mer 14 Set 2011 - 12:48

nessun problema.
andiamo per ordine, se NESSUNA delle singole query dà risultato diverso da 0 prova con la prima:
(quella che conta i pazienti nel registro)

TOGLI LA RIGA con XXXX (nel caso tu non abbia messo il codice giusto)

se non funziona controlla che il registro sia ESATTAMENTE AND pip.Incent_Code like 'REG0009'
(potresti aver scritto male il registro, magari uno zero in meno)

se non funziona allunga il lasso di tempo ('2000-03-01' AS DATE) AS inizio o ('2011-12-01' AS DATE) AS fine

poi dimmi
giampiero


GiampiMaz
GiampiMaz
Membro Junior
Membro Junior

Messaggi : 122
Punti : 3119
Voti per importanza dei messaggi : 33
Data d'iscrizione : 20.02.11

Visualizza il profilo

Torna in alto Andare in basso

Re: Estrazione progetto ASL

Messaggio  drtulino il Mer 14 Set 2011 - 13:15

GiampiMaz ha scritto:nessun problema.
andiamo per ordine, se NESSUNA delle singole query dà risultato diverso da 0 prova con la prima:
(quella che conta i pazienti nel registro)
TOGLI LA RIGA con XXXX (nel caso tu non abbia messo il codice giusto)
se non funziona controlla che il registro sia ESATTAMENTE AND pip.Incent_Code like 'REG0009'
(potresti aver scritto male il registro, magari uno zero in meno)
se non funziona allunga il lasso di tempo ('2000-03-01' AS DATE) AS inizio o ('2011-12-01' AS DATE) AS fine
poi dimmi
giampiero

Ho fatto un pò di prove, ma il risultato è sempre uguale. Se seleziono io il registro dalla "Centrale statistiche" mi trova i 52 iscritti a registro, ma poi il risultato è zero, come da allegato, nelle altre righe della query.
File allegati
ScreenShot004.jpg Non hai il permesso di scaricare i file.(70 kB) Scaricato 5 volte

_________________
Renato Tulino
MMG Monte Argentario (GR)
Facebook Millewin: https://www.facebook.com/groups/utentimillewin/
Twitter: @RenatoTulino
drtulino
drtulino
Moderatore
Moderatore

Messaggi : 1833
Punti : 5157
Voti per importanza dei messaggi : 91
Data d'iscrizione : 20.02.11
Età : 55
Località : Monte Argentario (GR)

Visualizza il profilo https://www.facebook.com/groups/utentimillewin/

Torna in alto Andare in basso

Re: Estrazione progetto ASL

Messaggio  GiampiMaz il Mer 14 Set 2011 - 14:16

A questo punto ti direi di usare quelle di Draghini (a proposito se ci leggi non è che potresti darci la tua opinione? Very Happy )
Ma se vuoi continuare a provare io sono disponibile.
In questi casi in genere frammento la query aggiungendo un'istruzione alla volta, ma almeno bisogna partire da qualcosa di funzionante.

SELECT CAST ('2011-03-01' AS DATE) AS inizio, CAST ('2011-05-31' AS DATE) AS fine, 'Totale' as nome, count (p.codice) as ris
FROM pazienti p, nos_002 n, cart_concessioni_pip pip
WHERE
p.codice=n.codice AND p.codice=pip.codice
AND pip.Incent_Code like 'REG0009'
AND data_autorizzazione between inizio and fine

primo passo: funziona? NO

secondo passo:

SELECT count (p.codice) as ris
FROM pazienti p, nos_002 n, cart_concessioni_pip pip
WHERE
p.codice=n.codice AND p.codice=pip.codice
AND pip.Incent_Code like 'REG0009'

funziona? NO lasciamo perdere, forse il tuo millewin ha cambiato i nomi dei registri!

una di queste funziona? partiamo da lì...
giampiero
GiampiMaz
GiampiMaz
Membro Junior
Membro Junior

Messaggi : 122
Punti : 3119
Voti per importanza dei messaggi : 33
Data d'iscrizione : 20.02.11

Visualizza il profilo

Torna in alto Andare in basso

Re: Estrazione progetto ASL

Messaggio  Contenuto sponsorizzato


Contenuto sponsorizzato


Torna in alto Andare in basso

Torna in alto


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