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

Duda: Ordenar por hora

Estas en el tema de Duda: Ordenar por hora en el foro de Mysql en Foros del Web. Gente, Tengo el siguiente problema. En mi base de datos, tengo 4 registros de hora. Ejemplo: ID - hora 1- 18:10 2- 17:25 3 - ...
  #1 (permalink)  
Antiguo 03/02/2010, 10:33
 
Fecha de Ingreso: mayo-2003
Mensajes: 312
Antigüedad: 16 años, 8 meses
Puntos: 2
Duda: Ordenar por hora

Gente,
Tengo el siguiente problema.
En mi base de datos, tengo 4 registros de hora.
Ejemplo:

ID - hora

1- 18:10
2- 17:25
3 - 20:10
4 - 9:35

El tema es el siguiente... Quiero ordenarlos por hora.
Debería quedar:

9:35
17:25
18:10
20:10

He probado con:

Código:
$sql = "select * FROM lista ORDER BY hora ASC";
$result = mysql_query($sql);
// Donde hora es el nombre del campo de las horas.
El tema es que me lo ordena de esta manera...

17:25
18:10
20:10
9:35

Cuando 9:35 deberia ser el primero.
¿Alguna sugerencia?

Gracias.
  #2 (permalink)  
Antiguo 03/02/2010, 10:39
Avatar de gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.323
Antigüedad: 12 años, 2 meses
Puntos: 2654
Respuesta: Duda: Ordenar por hora

Si: Modifica ese campo y ponle el tipo de dato correcto.
Estás usando CHAR o VARCHAR y el campo debería ser TIME. Por eso no te los ordena bien, porque los ordena alfabéticamente.

Si no puedes hacerlo, deberás usar una función de conversión para que los transforme en TIME, pero para ello deberás indicar específicamente los campos, y no usar "*".
__________________
¿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: Ninguno
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 18:17.