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

MySQL regexp beaucoup plus lent que comme

Essayez de changer votre regexp chaîne vers "^asdf_[0-9]+" .

LIKE est ancré (c'est-à-dire LIKE 'asdf_%' dit "une chaîne commençant par asdf_"), alors que REGEXP n'est pas (REGEXP 'asdf_[0-9]+' recherche cela n'importe où dans la chaîne).

Notez que faire REGEXP 'asdf_[0-9]+' revient à dire LIKE '%asdf_%' .

Je pense que REGEXP sera toujours un peu plus lent que LIKE , mais j'espère que le début de l'ancre de ligne l'accélérera considérablement.