Mysql
 sql >> Datenbank >  >> RDS >> Mysql

MySQL-regexp auf Indizes

Nein, eine Suche mit regulären Ausdrücken kann keinen Index verwenden. Wenn das Ding, auf das Sie die Regex anwenden, ein Index ist, geht es vielleicht etwas schneller, aber Sie scannen im Wesentlichen Tabellen.

Die einzige Problemumgehung, die ich kenne, ist die Verwendung von LIKE 'foo%' statt RLIKE 'foo.*' wenn das dein regulärer Ausdruck ist. Ein Index für eine solche Spalte kann LIKE verwenden, aber nicht RLIKE