Usa:
SELECT `id`,
`hits` + `other_hits` AS `total_hits`
FROM `something`
HAVING `total_hits` > 30
Il primo MySQL che consente riferimenti agli alias di colonna è GROUP BY
clausola; le clausole successive supportano i riferimenti (HAVING
, ORDER BY
). La maggior parte degli altri database non supporta il riferimento a un alias di tabella prima di ORDER BY
, che in genere richiede l'utilizzo di una tabella derivata/vista in linea:
SELECT t.id, t.total_hits
FROM (SELECT `id`,
`hits` + `other_hits` AS `total_hits`
FROM `something`) t
WHERE t.total_hits > 30
Altrimenti, devi riutilizzare la logica nella clausola WHERE:
SELECT `id`,
`hits` + `other_hits` AS `total_hits`
FROM `something`
WHERE `hits` + `other_hits` > 30