Buongiorno.
Ho delle difficoltà con una query che deve eseguire operazioni aritmetiche su dei dati che potrebbero essere NULL o inesistenti (la WHERE di estrazione non estrae alcun record).
In quei casi la query restituisce NULL, a me servirebbe che restituisse il risultato dell'operazione come se quel valore fosse 0.
La query in questione è la seguente
Ho provato con varie sintassi di CASE x WHEN NULL, CASE WHEN ISNULL(x), CASE WHEN x IS NULL ma restituisce sempre la prima riga NULL.codice:SELECT A.NomeImpianto AS NomeImpianto, A.Anno AS Anno, A.Mese AS Mese, A.OrigineLettureContatori AS OrigineLettureContatori, A.TotaleImmissioniMensile - (SELECT CASE B.TotaleImmissioniMensile WHEN NULL THEN 0 ELSE B.TotaleImmissioniMensile END FROM CensimentoImpianti.SommaSostContMese AS B WHERE A.NomeImpianto = B.NomeImpianto AND A.OrigineLettureContatori = B.OrigineLettureContatori AND B.Anno = CASE A.Mese WHEN 1 THEN A.Anno - 1 ELSE A.Anno END AND B.Mese = CASE A.Mese WHEN 1 THEN 12 ELSE A.Mese -1 END ) AS ProduzioneMensile FROM CensimentoImpianti.SommaSostContMese AS A
Grazie per i suggerimenti.

Rispondi quotando
