sql >> Base de Datos >  >> RDS >> Mysql

¿Cómo selecciono por un rango de caracteres iniciales?

Más rápido que Regular expressions y SUBSTRING() llamadas de función. Esto usará el índice de symbolName :

WHERE symbolName >= 'A' 
  AND symbolName < 'G'

Sin embargo, hay un problema con la distinción entre mayúsculas y minúsculas. ¿Quieres nombres que comiencen con a..f? también o no?

Si solo desea nombres que comiencen con mayúsculas y la tabla tiene utf8 juego de caracteres, use:

WHERE symbolName >= 'A' COLLATE utf8_bin
  AND symbolName < 'G' COLLATE utf8_bin

Para otros juegos de caracteres, use el _bin correspondiente colación.