Forse usando una funzione al posto del case? Così da fare il join sul
valore di ritorno della funzione.
Oppure fare una funzione che, dato il tuo record di ingresso, ti dia
una tupla di uscita compilata come vuoi tu.
Comunque voterei per la soluzione del trigger e aggiusterei i dati alla fonte.
Luca
2012/12/10 Roberto Marzialetti <roberto.marzialetti@xxxxxxxxx>:
ciao
ho due campi
- data_incasso
- stato_incasso_id -> FK tabella stati_incassi
(si, ho sbagliato lo schema del db...)
adesso vorrei eliminare il campo "stato_incasso_id" desumendolo da
"data_incasso", ma non vorrei fare troppi danni allo
schema/applicazione. quindi. pensavo di fare:
CASE
WHEN data_incasso IS NULL
THEN 'DIN' ELSE 'ATC' -- che sono i valori nella tabella stati_incassi
END AS stato_incasso_id
INNER JOIN stato_incasso_id ON stati.stato_incasso_id
ma ovviamente non me lo fa fare...
pensavo quindi di usare tanti case quanti ne ho bisogno
-- per il codice
CASE
WHEN data_incasso IS NULL
THEN 'DIN' ELSE 'ATC' -- che sono i valori nella tabella stati_incassi
END AS stato_incasso_id,
-- per la descrizione
CASE
WHEN data_incasso IS NULL
THEN 'Da incassare' ELSE 'Da incassare'
END AS stato_incasso,
-- per il colore
CASE
WHEN data_incasso IS NULL
THEN 'Rosso' ELSE 'Verde'
END AS colore_incasso
ma non mi piace molto...
con un trigger?
altre idee?
grazie
--
Roberto Marzialetti
webdeveloper
m. 329 0681847
_______________________________________________
Postgresql-it mailing list
Postgresql-it@xxxxxxxxxxxxx
http://lists.psql.it/mailman/listinfo/postgresql-it