quelle + coerenti con la domandaA prescindere dal tuo gusto personale nello scegliere le risposte
il punto è che essendo una select e non sapendo il tipo di dato con cui vado a confrontare l'id ero convinto che se non era dello stesso tipo non mi restituisse nessun record invece non accade proprio questo, molto probabilmente per il motivo "supposto" da n0te a prescindere dal fatto che si stia parlando di una query di SELECT, io volevo dirti che se tu in una strringa SQL vai a scrivere ID = '3hdfjdf", dove nella colonna ID possono essere segnati solo SMALLINT, comunque la query non ti restituirà nessun risultato utile.
e intuito da meDovrebbe tradurla come:
3 = (int) 3f
se la colonna è smallint taglia la stringa al primo valore non numerico visto che dopo il primo 3 c'è una 'f' lui taglia la stringa al primo 3
ho osservato che viene confrontato il 3 con il primo 3 della stringa, nel senso che se la query è
select id from utenti where id='f2c608b3ba0e51895d9317c486d6f79' non restituisce nessun record.