>ricevo questa tabella:
>n_persone | numero_notti | sp | hb | fb | bb | ai
> 1 1 1 null null null null
> 1 1 null 2 null null null
> 2 1 3 null null null null
> 2 1 null 4 null null null
>
>Come faccio ad avere la tabella con solo le 2 righe con tutti
>i trattamenti?
Non conosco MySQL, ma prendendo spunto dalla tua query dovresti risolvere con qualcosa del genere:
SELECT
n_persone
, numero_notti
, MAX(sp) AS sp
, MAX(hb) AS hb
, MAX(fb) AS fb
, MAX(bb) AS bb
, MAX(ai) AS ai
FROM (
SELECT
n_persone
, numero_notti
, if(trattamento='SP',costo, null) as sp
, if(trattamento='HB',costo, null) as hb
, if(trattamento='FB',costo, null) as fb
, if(trattamento='BB',costo, null) as bb
, if(trattamento='AI',costo, null) as ai
FROM costi
WHERE ndx_tariffa=39439
) AS Q
GROUP BY n_persone, numero_notti;
>Grazie mille
Prego.
Ciao!
--
Lorenzo Benaglia
Microsoft MVP - SQL Server
http://blogs.dotnethell.it/lorenzo/
http://italy.mvps.org