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

duda con mysql

Estas en el tema de duda con mysql en el foro de Bases de Datos General en Foros del Web. Estoy haciendo un sitio web que accede a una base de datos mysql. Uno de los campos de esa base de datos es de tipo ...
  #1 (permalink)  
Antiguo 06/02/2003, 04:04
 
Fecha de Ingreso: septiembre-2002
Mensajes: 23
Antigüedad: 21 años, 7 meses
Puntos: 0
duda con mysql

Estoy haciendo un sitio web que accede a una base de datos mysql. Uno de los campos de esa base de datos es de tipo fecha y según la variable tipo (que la saco de un formulario) agrupo los datos por año, mes, día, hora...

Estoy trabajando con asp y la variable tipo coge los siguientes valores:
select case Request.Querystring("Tipo")
case "Por año"
tipo="%Y"
case "Por mes"
tipo="%M %Y"
case "Por día"
tipo="%d/%m/%y, %a""
case "Por hora"
tipo="%d/%m/%y %h"
end select

La consulta funciona bien y es la siguiente:
SQL= "SELECT DISTINCTROW DATE_FORMAT([datos].[fechahora]," & """"&tipo&"""" & ") AS Fecha, Sum(datos.personas_entran) AS Entradas, Sum(datos.personas_salen) AS Salidas, Sum(datos.vehiculos_entran) AS [EntradasVehic], Sum(datos.vehiculos_salen) AS [SalidasVehic] FROM datos WHERE [datos].[fechahora] >= '"&fechai&"' AND [datos].[fechahora] <= '"&fechaf&"' GROUP BY DATE_FORMAT([datos].[fechahora]," & """"&tipo&"""" & ");"

El problema es que las fechas salen desordenadas, por ejemplo, despues del 08/07/02 va el 08/08/03 en vez del 09/07/02, april es el primer mes que aparece en vez de january, etc. ¿Cómo podría arreglar esto y que las fechas salieran ordenadas? y además de eso, ¿hay alguna manera de que los nombres de los meses y los días de la semana salgan en castellano y no en ingles? Muchas gracias.
  #2 (permalink)  
Antiguo 06/02/2003, 11:06
Avatar de WyLY  
Fecha de Ingreso: enero-2002
Ubicación: Cancun, México.
Mensajes: 506
Antigüedad: 22 años, 3 meses
Puntos: 6
intenta agregando a la ultimo de tu seleccion un:
ORDER BY campo DESC // Donde campo es el nombre de tu fecha o id o como tu lo trabajes.

Otra forma:
ORDER BY campo ASC

Si tienes mas dudas te invito a que visites lo siguiente:
http://www.lobocom.es/~claudio/sql002.htm

saludos.
__________________
I do techy stuff for a living and practice MMA with my dog... He always wins.
  #3 (permalink)  
Antiguo 07/02/2003, 03:11
 
Fecha de Ingreso: septiembre-2002
Mensajes: 23
Antigüedad: 21 años, 7 meses
Puntos: 0
Ya he probado lo que me has dicho de 2 formas diferentes, poniendo:

ORDER BY DATE_FORMAT([datoscont].[fechahora]," & """"&tipo&"""" & ") ASC

ORDER BY Fecha ASC

y nada, sigue saliendo despues de 08/08/02 el 08/09/02 en vez del 09/08/02.
  #4 (permalink)  
Antiguo 07/02/2003, 03:38
 
Fecha de Ingreso: septiembre-2002
Mensajes: 23
Antigüedad: 21 años, 7 meses
Puntos: 0
bueno!! gracias a tu pista, he estado salseando y al final añadiendo en la clausula SELECT:
MIN(datos.fechahora) as fechaorden,
y en lo que me has dicho tu del ORDER:
ORDER BY fechaorden,
me ha funcionado!!!
Muchas gracias por darme una idea de por donde tirar.

De todas maneras, ¿sabrías como hacer para que salieran los meses y los dias de la semana en castellano?
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 10:24.