Ver Mensaje Individual
  #1 (permalink)  
Antiguo 17/06/2015, 19:08
guillerobb
 
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!