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

Separar cadenas y formatear fecha

Estas en el tema de Separar cadenas y formatear fecha en el foro de Mysql en Foros del Web. Hola a todos tengo el siguiente valor en una campo de un tabla 10-12-2010-IPN-CIDIM-MDVA-1985-10-SL1 y necesito separar la fecha lo cual lo hago de la ...
  #1 (permalink)  
Antiguo 23/03/2012, 23:04
 
Fecha de Ingreso: febrero-2009
Ubicación: mexico
Mensajes: 148
Antigüedad: 15 años, 9 meses
Puntos: 1
Sonrisa Separar cadenas y formatear fecha

Hola a todos tengo el siguiente valor en una campo de un tabla

10-12-2010-IPN-CIDIM-MDVA-1985-10-SL1

y necesito separar la fecha lo cual lo hago de la siguiente manera

(LEFT(nombre,10))

donde nombre es el campo que sustituye por lo valores contenidos en la tabla tal como el valor de arriba, hasta ahi todo bien me separa la fecha dando como resultado

12-12-2010

ahora lo que necesito es cambiarle el formato a la fecha para lo cual uso DATE_FORMAT de la siguiente manera

DATE_FORMAT((LEFT(nombre,10)),'%Y-%m-%d')

pero me devuelve un valor null ya le dia vueltas y no encuentro el porque me devuelve valores nulos, lo que necesito despues de cambiar el formato de fecha es ordenarla de mayor a menor, si alguien puede ayudarme se lo agradeceria mucho...
  #2 (permalink)  
Antiguo 23/03/2012, 23:50
 
Fecha de Ingreso: marzo-2012
Mensajes: 3
Antigüedad: 12 años, 7 meses
Puntos: 0
Respuesta: Separar cadenas y formatear fecha

hola
mira por lo que lei, es por el formato ya que mysql interpreta YYYY-mm-dd y no dd-mm-YYYY por eso te devuelve null, aca hide una query que basicamnete uso substring y separo por guion
ojala te sirva
sl2

SELECT
DATE_FORMAT(CONCAT_WS("-",
SUBSTRING_INDEX(SUBSTRING_INDEX("10-12-2010-IPN-CIDIM-MDVA-1985-10-SL1","-",3),"-",-1),
SUBSTRING_INDEX(SUBSTRING_INDEX("10-12-2010-IPN-CIDIM-MDVA-1985-10-SL1","-",2),"-",-1),
SUBSTRING_INDEX("10-12-2010-IPN-CIDIM-MDVA-1985-10-SL1","-",1)),"%d/%m/%Y")

Etiquetas: date_format, left
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 12:15.