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

Cual sería la forma más directa de hacer esto?

Estas en el tema de Cual sería la forma más directa de hacer esto? en el foro de Mysql en Foros del Web. Imaginen una tabla con solo 2 campos: label | index --------------------------- rojo | 1 --------------------------- verde | 2 --------------------------- azul | 3 --------------------------- negro | ...
  #1 (permalink)  
Antiguo 25/04/2010, 14:00
 
Fecha de Ingreso: octubre-2003
Mensajes: 540
Antigüedad: 20 años, 5 meses
Puntos: 1
Cual sería la forma más directa de hacer esto?

Imaginen una tabla con solo 2 campos:


label | index
---------------------------
rojo | 1
---------------------------
verde | 2
---------------------------
azul | 3
---------------------------
negro | 4
---------------------------
gris | 5
---------------------------


El campo numerico indica el orden en que se lista esa fila.
Ahora bien, si yo por ejemplo a 'verde' quiero mandarlo al final de la lista (asignarle el index más alto) tengo que reordenar todas las filas que le siguen.
Bueno, esa es mi consulta precisamente, que función provee mysql para esto, algo que me permita hacerlo de forma automática.

Espero que se entienda, saludos.
  #2 (permalink)  
Antiguo 25/04/2010, 22:20
Avatar de huesos52
Colaborador
 
Fecha de Ingreso: febrero-2009
Ubicación: Manizales - Colombia
Mensajes: 5.980
Antigüedad: 15 años, 2 meses
Puntos: 360
Respuesta: Cual sería la forma más directa de hacer esto?

No la tiene pero la puedes hacer.

CREATE FUNCTION te puede ayudar.

es muy simple realmente. Basta con uno o dos updates sobre la tabla.
__________________
Without data, You are another person with an opinion.
W. Edwads Deming
  #3 (permalink)  
Antiguo 29/04/2010, 11:55
 
Fecha de Ingreso: enero-2010
Ubicación: Sevilla
Mensajes: 202
Antigüedad: 14 años, 2 meses
Puntos: 5
Respuesta: Cual sería la forma más directa de hacer esto?

Si haces un consulta ordenada, te salen directamente en le orden correcto. Lo único que debes hacer es actualizar el campo index al valor correcto para que te salga en su posición:

Código MySQL:
Ver original 
__________________
Mi blog de temas más o menos técnicos

Y aquí el Jamón jamon de Jabugo

Etiquetas: formulario
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:01.