sql >> Database teknologi >  >> Database Tools >> phpMyAdmin

mysql-forespørgsel viser forkert resultat

Du blander typer. ID er et heltal (eller tal). Du sammenligner det med en streng. Så MySQL skal beslutte, hvilken type der skal bruges til sammenligningen. Hvilke typer bliver brugt? Nå, en snor? Nej. Et nummer. Strengen konverteres til et tal ved hjælp af de førende cifre. Så det bliver 101 og tændstikker.

Du bør egentlig kun sammenligne tal med tal og strenge med strenge. Du kan prøve at skrive koden som:

SELECT * FROM tableName WHERE ID = 101foo2

Du vil dog få en fejl. En anden mulighed er at tvinge konverteringen til en streng:

SELECT * FROM tableName WHERE CAST(ID as CHAR) = '101foo2'



  1. Aktivering af mysql Event scheduler på serveren genstarter

  2. Sådan får du phpmyadmin brugernavn og adgangskode

  3. Forespørgsel MEGET langsom (>30s) i php, men hurtig, når du kører forespørgslen i phpmyadmin

  4. phpmyadmin 4 nedgradere til 3