Ciao a tutti, ho una query del tipo:
SELECT id, nome, cognome, IF(eta = 0, 'Età non specificata', eta) AS eta
FROM persone
WHERE eta < 30
Il campo eta fa parte della tabella, e se è a zero significa che non è stata specificata. Quindi non prendo quel campo nelle SELECT, ma un campo calcolato con un IF() che poi rinomino come eta. Facendo così però non posso fare la restrizione con il WHERE, perchè il comando WHERE vuole solo campi originari della tabella, e non calcolati. Come posso fare?
Dalla documentazione:
It is not allowable to use a column alias in a WHERE clause, because the column value might not yet be determined when the WHERE clause is executed.