sql >> Database teknologi >  >> RDS >> Mysql

Udførelse af en LIKE-sammenligning på et INT-felt

Du kan CAST feltet til en streng:

 ... WHERE CAST(ProductID as CHAR) LIKE '%15%'

dette er meget dårligt for ydeevnen, da mySQL ikke kan gøre brug af de indekser, den er oprettet til INT-kolonnen. Men så LIKE er altid langsom, selv når det gøres på et varchar-felt:Der er ingen måde at have et indeks, der fremskynder en LIKE-forespørgsel.

Det kan være værd at have en anden varchar kolonne, der afspejler int kolonnens værdier og gøre LIKE på den - du skal benchmarke for at finde ud af, om det vil gøre noget godt.



  1. Hvad er nyt med MySQL-replikering i MySQL 8.0

  2. Generer tabelrelationsdiagram fra eksisterende skema (SQL-server)

  3. Selvstudium til SQL Server-tabelopdeling og -partitioner

  4. Hvad er indstillingen for at se tidsdelen med dato i Oracle PL/SQL-udvikler?