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

Consulta ordenada por tres campos.

Estas en el tema de Consulta ordenada por tres campos. en el foro de Mysql en Foros del Web. Gente, necesito de su valiosa ayuda. Me siento un poco tonto por no poder resolver esto, pero no entiendo por qué no funciona esta consulta ...
  #1 (permalink)  
Antiguo 23/05/2010, 16:53
Avatar de pabloe9k  
Fecha de Ingreso: julio-2008
Ubicación: Argentina
Mensajes: 190
Antigüedad: 15 años, 9 meses
Puntos: 3
Pregunta Consulta ordenada por tres campos.

Gente, necesito de su valiosa ayuda.
Me siento un poco tonto por no poder resolver esto, pero no entiendo por qué no funciona esta consulta

Quiero listar todas las columnas de una tabla, ordenadas por el campo fechas_anio en forma decreciente. Pero de haber resultados iguales, que los ordene por el campo fechas_mes. Y si el resultado también es coincidente, que el campo de ordenamiento sea fechas_dia.


Código HTML:
SELECT * FROM fechas WHERE fechas_activo ='s' ORDER BY fechas_anio, fechas_mes, fechas_dia DESC

Utilizando SQL me funciona perfecto esa consulta, pero en MySQL no funciona! me ordena cualquier cosa.

En que me estoy equivocando?
Muchas gracias de antemano.

Saludos a todos.

Última edición por pabloe9k; 23/05/2010 a las 18:18
  #2 (permalink)  
Antiguo 24/05/2010, 03:28
Colaborador
 
Fecha de Ingreso: marzo-2008
Ubicación: Cáceres
Mensajes: 3.735
Antigüedad: 16 años
Puntos: 300
Respuesta: Consulta ordenada por tres campos.

Así ordenaría decreciente por los tres campos
SELECT * FROM fechas WHERE fechas_activo ='s' ORDER BY fechas_anio DESC, fechas_mes DESC, fechas_dia DESC
Así sólo decreciente el año.
SELECT * FROM fechas WHERE fechas_activo ='s' ORDER BY fechas_anio DESC, fechas_mes, fechas_dia

Deberías decirnos la naturaleza de los campos, es decir, qué tipo de campos son fecha_anio, fechas_mes y fechas_dia.
Yo te haría una recomendación, usar un campo DATE con los tres datos (ej., 2010-05-28) y luego ordenaría así:
SELECT * FROM fechas WHERE fechas_activo ='s' ORDER BY YEAR(campofecha) DESC, MONTH(campofecha), DAY(campofecha)
  #3 (permalink)  
Antiguo 25/05/2010, 07:46
Avatar de pabloe9k  
Fecha de Ingreso: julio-2008
Ubicación: Argentina
Mensajes: 190
Antigüedad: 15 años, 9 meses
Puntos: 3
Respuesta: Consulta ordenada por tres campos.

Muchas gracias, Jurena!!
Me ayudaste justo con lo que necesitaba.

Saludos!

Etiquetas: campos, ordenada, tres
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 02:47.