How can I make this work without repeating the definition of somaDiarias? For this query:
SELECT nome AS nomeHospede,
valorDiaria*DATE_PART('day',dataSaida::timestamp - dataEntrada::timestamp) AS somaDiarias,
CASE WHEN (somaDiarias >=0) AND (somaDiarias <= 1000) THEN 'E'
WHEN (somaDiarias >=1000.01) AND (somaDiarias <= 3000.00) THEN 'D'
WHEN (somaDiarias >=3000.01) AND (somaDiarias <= 7000.00) THEN 'C'
WHEN (somaDiarias >=7001.00) AND (somaDiarias <= 10000) THEN 'b'
WHEN (somaDiarias >10000) THEN '10'
END AS Classe
FROM hospedagem a
JOIN hospede b on a.codHospede = b.codHospede
I get the following error:
ERROR: column "somadiarias" does not exist