Re: gestione dei periodi

From: Mirko Pace <mirkop82(at)gmail(dot)com>
To: nicola zandonà <nick(dot)zando(at)gmail(dot)com>
Cc: "pgsql-it-generale(at)postgresql(dot)org" <pgsql-it-generale(at)postgresql(dot)org>
Subject: Re: gestione dei periodi
Date: 2009-11-18 20:43:35
Message-ID: 8eae94e10911181243y695a3f49k4ca0ce9dc1080b6f@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-it-generale

Senza cte e senza sp devi far girare due query n-1 volte, dove n è il
numero di occorrenze del paziente più frequente:

update
my_pazienti
set
fine = '2100-01-01'
from
(select
id_paz,
min(inizio)
from
my_pazienti
where
fine is null
group by
id_paz) b
where
my_pazienti.id_paz = b.id_paz
and
my_pazienti.inizio = b.min ;

update
my_pazienti
set
fine = b.min
from
(select
id_paz,
min(inizio)
from
my_pazienti
where
fine is null
group by
id_paz) b
where
my_pazienti.fine = '2100-01-01'
and
my_pazienti.id_paz = b.id_paz;

Mirko

Il giorno 18/nov/2009, alle ore 13.59, nicola zandonà <nick(dot)zando(at)gmail(dot)co
m> ha scritto:

> Ciao a tutti!
> Ho una tabella dove vengono descritte delle zone di alcuni pazienti
> di un servizio
> la tabella è cosi composta:
>
> codice: chiave della tabella
> paziente: id del paziente
> zona : zona del paziente
> data_inizio: data di ingresso nella zona (campo di tipo date)
> data_fine: data di uscita dalla zona (campo di tipo date)
>
> Il problema è che mancano tutte le informazioni di data_fine, cosi a
> d esempio ho:
>
> codice | paziente | zona | data_inizio |
> data_fine
> 01 1 3 2007-01-01
> 03 1 4 2009-01-10
>
> Esite il modo di completare data_fine con la data_inizio del periodo
> successivo dello stesso paziente?
>
>
> Grazie in anticipo!
>
>
>
> --
> Sent via pgsql-it-generale mailing list (pgsql-it-generale(at)postgresql(dot)org
> )
> To make changes to your subscription:
> http://www.postgresql.org/mailpref/pgsql-it-generale

In response to

Browse pgsql-it-generale by date

  From Date Subject
Next Message Andrea Adami 2009-11-19 09:27:48 Re: gestione dei periodi
Previous Message nicola zandonà 2009-11-18 20:07:31 Re: gestione dei periodi