O
HAVING
A cláusula deve ser usada em dados agregados quando você está agrupando linhas usando o GROUP BY
cláusula. Como você está operando em cada linha individualmente, você deve substituir HAVING
com um WHERE
cláusula. Veja este exemplo
para detalhes. Usar HAVING em colunas não agregadas em sua lista SELECT é um comportamento não padrão que o MySQL suporta, mas um comportamento no qual não se deve confiar. Mesmo a referência MySQL desencoraja:
Como um aparte:se você estiver passando argumentos do usuário para sua consulta (com o
%s
), certifique-se de examinar as declarações preparadas. Caso contrário, você pode ter uma falha de segurança gritante em suas mãos.