Deze instructie retourneert rijen voor my_field = '13a'
:
SELECT * FROM my_table WHERE my_field=13
Omdat MySQL tijdens de vergelijking typeconversie van tekenreeks naar nummer uitvoert, wordt '13a'
tot 13
. Meer hierover in deze documentatiepagina
.
Het toevoegen van aanhalingstekens verandert het gehele getal in een tekenreeks, dus MySQL voert alleen tekenreeksvergelijking uit. Het is duidelijk dat '13'
kan niet gelijk zijn aan '13a'
.
De LIKE
clausule voert altijd een tekenreeksvergelijking uit (tenzij een van de operanden NULL
is) , in welk geval het resultaat NULL
. is ).