Esta instrução retorna linhas para
my_field = '13a' :SELECT * FROM my_table WHERE my_field=13
Como o MySQL realiza a conversão de tipo de string para número durante a comparação, transformando
'13a' para 13 . Mais sobre isso nesta página de documentação
. Adicionar aspas transforma o inteiro em uma string, então o MySQL só executa a comparação de strings. Obviamente,
'13' não pode ser igual a '13a' . O
LIKE A cláusula sempre realiza uma comparação de strings (a menos que um dos operandos seja NULL , caso em que o resultado é NULL ).