Cain .. no se si te entendí bien ...
Pero que tiene que ver el resto de campos que usas en un SELECT .. en un UPDATE .. o lo que sea .. cuando usas una condicion WHERE ..?
Lo otro .. si definimos una condicion WHERE campo=valor .. deberan ser mismo tipo para que se cumpla la condicion ...
De todas formas yo siempre he usado la estructura:
WHERE campo='$valor' .. y he comparado tanto alfanumericos como numericos y nunca me ha dado problemas? .. a que te refieres con lo que comentas? ...
Un saludo,