2009-12-23 7 views

Respuesta

6

Se puede utilizar como la expresión 'a%', pero si desea que esta consulta se ejecute rápido para tablas grandes me gustaría recomendar que poner varias primer botón en un campo separado con un pequeño tipo int.

12

Prueba esto:

select * from artists where name like "A%" or name like "B%" or name like "C%" 
+2

O nombre como "B%", etc ... –

+0

gritos, arreglado. gracias por la captura rápida –

+0

No hay problema. El título y el cuerpo de la pregunta no están 100% de acuerdo. –

4

En mysql use el '^' para identificar que desea verificar el primer carácter de la cadena, luego defina la matriz [] de letras que desea verificar.

intenta esto

SELECT * FROM artistas WHERE nombre REGEXP '^ [abc]'

+1

REGEXP es un sinónimo de RLIKE, por lo que esta respuesta es la misma que la de @ZenOut. – JonP

3

Uno puede también utilizar RLIKE como a continuación

SELECT * FROM artists WHERE name RLIKE '^[abc]'; 
0

trate de usar charlist como se muestra a continuación:

select distinct name from artists where name RLIKE '^[abc]'; 

use distinct solo si solo desea valores distintos. Para leer sobre él, haga clic en here.

+0

que solo encuentra artistas llamados "a", "b" o "c". –

+0

@DourHighArch incorrecto, la expresión regular ''^ [abc]'' significa cualquier nombre que comience con a, bo c. – JonP

+0

@JonP La expresión originalmente publicada fue '[abc]'. La nueva expresión es una copia de una publicada hace un mes. –

0

Pruebe este sencillo seleccionar:

select * 
from artists 
where name like "a%" 
Cuestiones relacionadas