sql >> Databáze >  >> RDS >> Mysql

optimalizujte dotaz mysql pomocí operátoru LIKE pro 10k záznamů

Jedna optimalizace je ta v exact případě nemusíte používat LIKE (měli byste jej použít pouze se zástupným znakem - %).

Další věc, kterou můžete udělat, abyste věci urychlili, je přidání INDEXu do polí, ve kterých budete hledat.

Fulltextové vyhledávání můžete také použít pouze v případě, že jako úložný modul používáte MyISSAM (pro tuto tabulku). takhle

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

Zdá se, že celému procesu přináší velmi malou hodnotu.

Doufám, že to pomůže.



  1. Jak INSTR() funguje v MariaDB

  2. Přepište URL a nahraďte ID titulkem v řetězci dotazu

  3. Jak nastavím ASP.NET MVC 2 s MySQL?

  4. fulltextové vyhledávání mysql nefunguje pro 3 znaky