Utiliser :
SELECT `id`,
`hits` + `other_hits` AS `total_hits`
FROM `something`
HAVING `total_hits` > 30
Le premier MySQL autorise les références aux alias de colonne est le GROUP BY
clause; les clauses après cela prennent en charge les références (HAVING
, ORDER BY
). La plupart des autres bases de données ne prennent pas en charge le référencement d'un alias de table avant le ORDER BY
, ce qui nécessite généralement l'utilisation d'une table dérivée/vue intégrée :
SELECT t.id, t.total_hits
FROM (SELECT `id`,
`hits` + `other_hits` AS `total_hits`
FROM `something`) t
WHERE t.total_hits > 30
Sinon, vous devez réutiliser la logique dans la clause WHERE :
SELECT `id`,
`hits` + `other_hits` AS `total_hits`
FROM `something`
WHERE `hits` + `other_hits` > 30