
18/01/2010, 10:16
|
Colaborador | | Fecha de Ingreso: marzo-2008 Ubicación: Cáceres
Mensajes: 3.735
Antigüedad: 17 años Puntos: 300 | |
Respuesta: crear campo haciendo una consulta ferranweb,
lo primero es decirte que no deberías tener en una base de datos un campo de fecha_nacimiento con el formato 17 de Enero de 2009. Deberías procurar crear un nuevo campo de tipo DATE y trasladar los datos a él escribiéndolos con el formato 2009-01-17.
Podrías usar varios trucos para conseguirlo. Uno de ellos sería sustituir Enero por -01-
Febrero -02-
y así hasta diciembre por -12-
Luego eliminas todos los caracteres a, b, c, d, hasta z. y por supuesto los espacios en blanco, y te quedará 17-01-2009, 3-04-1984,
etc.
Luego podremos hacer un cambio mediante str_to_date() para obtener la fecha en el otro formato y pasarlo a un campo date. Si quieres ayuda podremos ofrecértela.
Pero volvamos a lo que pides: puedes, si siempre tienes el año al final, extraerlo así
SELECT SUBSTRING(fecha_nacimiento, -4) FROM tutabla
Esto te mostrará todos los años. Si vas a comparar con numéricos podríamos usar
SELECT CAST(SUBSTRING(fecha_nacimiento, -4) AS UNSIGNED) FROM tutabla
Edito: se me adelantó huesos52.
Última edición por jurena; 18/01/2010 a las 15:29 |