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

Problema al ordenar por fecha

Estas en el tema de Problema al ordenar por fecha en el foro de Mysql en Foros del Web. Buenas! Debo realizar la re enumeración de los registros de una tabla de una base de datos MySQL. El campo llamado numero debería pasar a ...
  #1 (permalink)  
Antiguo 17/06/2015, 19:08
 
Fecha de Ingreso: junio-2015
Mensajes: 1
Antigüedad: 8 años, 10 meses
Puntos: 0
Pregunta Problema al ordenar por fecha

Buenas! Debo realizar la re enumeración de los registros de una tabla de una base de datos MySQL.
El campo llamado numero debería pasar a tener una numeración secuencial, ordenando la tabla por fecha.
Pero al realizar el update, los registros no tienen el número correcto.

El código que utilizo para realizar el update es el siguiente:

set @num:=0;
update tabla set numero = (@num:=@num+1) where id_registro in
(select id_registro from (select id_registro from tabla order by fecha) as aux);

Ordeno la tabla en una subconsulta, ya que así eran los ejemplos que encontré para realizar este tipo de operación.
Al ordenar por fecha, se observa que los registros se ordenan correctamente. Pero al realizar el update el número no es el correcto.
Por ejemplo, ordenando antes de re enumerar:
numero fecha
3 2014-01-01
1 2014-01-02
2 2014-02-15
4 2014-02-17
5 2014-02-25
7 2014-03-01
6 2014-03-10
9 2014-03-12

Se realiza el update y termino teniendo:
1 2014-03-01
2 2014-01-02
3 2014-02-15
4 2014-02-17
5 2014-02-25
7 2014-01-01
6 2014-03-10
9 2014-03-12

Si a alguien le paso, les agradecería que me cuenten cómo.
Muchas gracias!
  #2 (permalink)  
Antiguo 17/06/2015, 20:20
Avatar de gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 16 años, 5 meses
Puntos: 2658
Respuesta: Problema al ordenar por fecha

Tu columna de fecha no es DATE, sino VARCHAR, lo que es un error de los graves...
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)

Etiquetas: campo, fecha, registro, select, sql, tabla
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 17:25.