Mysql
 sql >> Base de données >  >> RDS >> Mysql

optimiser la requête mysql avec l'opérateur LIKE pour les enregistrements 10k

Une optimisation est que dans le exact cas, vous n'avez pas besoin d'utiliser LIKE (vous ne devez l'utiliser qu'avec le caractère générique - %).

Une autre chose que vous pouvez faire pour accélérer les choses est d'ajouter un INDEX aux fichiers dans lesquels vous allez effectuer une recherche.

De plus, uniquement si vous utilisez MyISSAM comme moteur de stockage (pour cette table), vous pouvez utiliser la recherche en texte intégral comme ça

SELECT * FROM normal WHERE MATCH(title, body) CONTRE ('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%' )

semble apporter très peu de valeur à l'ensemble du processus.

J'espère que cela vous aidera.