É um comportamento comum na maioria das linguagens de programação interpretar numerais iniciais como um número ao converter uma string em um número.
Existem algumas maneiras de lidar com isso:
Use instruções preparadas e defina o espaço reservado onde você está colocando o valor como um tipo numérico. Isso impedirá que as cordas sejam colocadas lá.
Verifique em uma camada superior do aplicativo para validar a entrada e certifique-se de que seja numérica.
Use a palavra-chave BINARY no mysql (estou apenas supondo que isso funcionaria, nunca tentei, pois sempre implementei um sistema de validação adequado antes de executar uma consulta) -
SELECT *
FROM table
WHERE BINARY ID = '32anystring';