sql >> Database >  >> RDS >> Mysql

optimaliseer mysql-query met LIKE-operator voor 10.000 records

Een optimalisatie is dat in de exact In het geval dat u LIKE niet hoeft te gebruiken (u moet het alleen gebruiken met het jokerteken - %).

Een ander ding dat u kunt doen om de dingen sneller te maken, is een INDEX toevoegen aan de bestanden waarin u gaat zoeken.

En alleen als u MyISSAM gebruikt als uw opslagengine (voor die tabel), kunt u full text search gebruiken zoals dit

KIES * VAN normal WHERE MATCH(titel, hoofdtekst) TEGEN ('Queried_string')

first_name LIKE '%S%'
OR last_name LIKE '%S%'
OR phone_number LIKE '%S%'
OR mobile_number LIKE '%S%'
OR email_address LIKE '%S%'
OR address LIKE '%S%'
OR organization LIKE '%S%'
OR other LIKE '%S%'
OR sector LIKE '%S%'
OR designation LIKE '%S%' )

lijkt weinig waarde toe te voegen aan het hele proces.

Ik hoop dat dit helpt.



  1. MYSQL zoeken door cellen met door komma's gescheiden waarden

  2. Mysql inconsistent aantal rijen count(*) vs table.table_rows in information_schema

  3. Indexen maken op meerdere kolommen

  4. Hoe te repareren "EXECUTE-instructie is mislukt omdat de WITH RESULT SETS-clausule 1 resultaatset (s) heeft gespecificeerd ..." in SQL Server