Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General » Mysql »

Obtener 1ª letra de un campo Mysql

Estas en el tema de Obtener 1ª letra de un campo Mysql en el foro de Mysql en Foros del Web. Muy buenas compañeros, Utilizo el siguiente script para obtener el resultado de una base de datos y mostrar únicamente aquellos cuyo "Alias" comience por la ...
  #1 (permalink)  
Antiguo 15/08/2008, 09:42
RJD
 
Fecha de Ingreso: enero-2006
Mensajes: 64
Antigüedad: 18 años, 2 meses
Puntos: 0
Obtener 1ª letra de un campo Mysql

Muy buenas compañeros,

Utilizo el siguiente script para obtener el resultado de una base de datos y mostrar únicamente aquellos cuyo "Alias" comience por la letra indicada en la variable de la URL:
SELECT * from chavales WHERE alias LIKE '$letra%'"
siendo $letra la variable colocada en la url...

Bien, mi duda es la siguiente:
Que debería poner en la variable de la URL o qué devería hacer para que me apareciesen aquellos que en lugar de empezar su alias por una letra sea un número.

Que aparezcan TODOS esos, porque si pongo en la variable un numero exacto (2 por ejemplo, solo me aparecen los que empiezan por el numero 2, en lugar de aparecer todos los que empiezan por un numero indistintamente, sea cual sea)


Muchisimas gracias


-----
Edito: Tambien podría empezar algún alias con un carácter no común (un $ por ejemplo)
¿Cómo hago para que todos esos numeros y caracteres aparezcan?

Última edición por RJD; 15/08/2008 a las 09:48
  #2 (permalink)  
Antiguo 15/08/2008, 09:46
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 17 años, 10 meses
Puntos: 2135
Respuesta: Obtener 1ª letra de un campo Mysql

Tema trasladado a MySQL.

Tendrías que hacer en tu query poner varias condiciones y juntarlas con AND.
  #3 (permalink)  
Antiguo 15/08/2008, 09:48
Avatar de julianmejio  
Fecha de Ingreso: agosto-2005
Ubicación: Medellín, Antioquia
Mensajes: 88
Antigüedad: 18 años, 7 meses
Puntos: 3
Respuesta: Obtener 1ª letra de un campo Mysql

Puedes utilizar la siguiente sentencia:

Código:
SELECT * FROM chavales WHERE alias REGEXP '^[0-9].'
Para todo lo que tú necesitas, el manejo de expresiones regulares es la mejor solución
  #4 (permalink)  
Antiguo 15/08/2008, 09:51
RJD
 
Fecha de Ingreso: enero-2006
Mensajes: 64
Antigüedad: 18 años, 2 meses
Puntos: 0
Respuesta: Obtener 1ª letra de un campo Mysql

Tendría que hacer un query solo para las letras y otro para los números entonces??

Eso serían muchas condicionales en el codigo no? No se puede hacer todo del tirón en un solo query?
  #5 (permalink)  
Antiguo 15/08/2008, 10:25
RJD
 
Fecha de Ingreso: enero-2006
Mensajes: 64
Antigüedad: 18 años, 2 meses
Puntos: 0
Respuesta: Obtener 1ª letra de un campo Mysql

Al final he usado condicionales, si la variable es 0:
SELECT * FROM chavales WHERE alias REGEXP '^[0-9].'
sino:
SELECT * from chavales WHERE alias LIKE '$letra%'"
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 04:13.