[Previo por Fecha] [Siguiente por Fecha] [Previo por Hilo] [Siguiente por Hilo]

[Hilos de Discusión] [Fecha] [Tema] [Autor]

Re: [Ayuda] Consejo sobre bases de datos...



> Que posibilidades hay para que cambies el campo "fecha" a date ?
> Si es posible, pon el formato en 'Annio-Mes-Dia' al momento de insertarlo.
>
No es posible, porque la base de datos la agarro de otra base de datos en MS SQL que la crea un programa propietario que es el que utilizamos para administración de activos... 

Pero estoy pensando en hacer un programa que se conecte a este MS SQL y tambien a MySQL y al momento de pasar los datos de la bd de MS SQL a MySQL, los campos de fecha los ponga en unixtime
 
> Podrias hacer tu query como:
> 
> SELECT year(fecha), month(fecha), dayofmonth(fecha), sum(monto)/100
> FROM trans
> WHERE fecha >= '2002-08-21' and fecha <= '2003-09-25'
> GROUP BY year(fecha), month(fecha), dayofmonth(fecha)
> 
> 
> 
> Como tienes que realizar ".. mas de 400 veces " por los dias en que tienes
> que realizar los calculos,
> agrupandolo de la forma anterior en Perl podrias ir realizando cortes cada
> mes, para obtener totales
> si eso es a lo que quieres llegar.
> 
> Solo una pregunta por que utilizas   WHERE fecha like 'Aug 21 2002 %'    en
> lugar de WHERE fecha='Aug 21 2002' ?

Un ejemplo de lo que está sería este:

Aug 21 2002 10:25 PM

> Acaso tu variable fecha guarda otros datos aparte de Mes Dia Annio ?
> 
> 
> 
> ----- Original Message -----
> From: "Roberto Villarreal" <roberto villarreal en funktiontech com>
> To: <ayuda en linux org mx>
> Sent: Wednesday, September 25, 2002 2:14 PM
> Subject: [Ayuda] Consejo sobre bases de datos...
> 
> 
> > Hola lista, tengo un pequeño problema y quisiera que me dieran su consejo
> para poder resolverlo...
> >
> > Tengo una base de datos en MySQL, hay como 70 tablas, la mas grande tiene
> mas de 20 mil registros, y es en esta en la que tengo las broncas...
> >
> > Esta tabla tiene una estructura similar a esta:
> >
> > tipo int
> > monto int
> > fecha varchar(255)
> > tiempo int
> >
> > Es una tabla de transacciones, y lo que yo hago es que la tomo de un
> programa de administración en windows (con ms sql) y por medio de la
> libreria de sybase la paso a mysql y la fecha es el problema, porque tengo
> que hacer consultas por un rango de fecha especifico y en vez de ponerle un
> > y un < (como si tuviera un unixtime) tengo que ir dia por dia con un WHERE
> fecha LIKE 'Aug 21 2002 %' y esta consulta es para hacer una sumatoria en
> monto y tiempo por lo que un query a esta tabla seria algo asi: SELECT
> sum(monto)/100 FROM trans WHERE fecha like 'Aug 21 2002 %'. Pero repetida
> mas de 400 veces (400 dias)... por lo que se tarda más de 1 minuto en
> desplegar una página que a su vez hace esto unas 20 veces con otras tablas u
> otros datos en la misma tabla, o sea son 8 mil querys, y aparte se genera
> una gráfica...
> >
> > Mi pregunta es ¿Qué me recomiendan hacer para optimizar todo esto?
> >
> > Espero me puedan ayudar a tomar una decisión.
> >
> > Saludos
> >
> > Roberto Villarreal
> > _______________________________________________
> > Ayuda mailing list
> > Ayuda en linux org mx
> > Para salir de la lista: http://mail.linux.org.mx/mailman/listinfo/ayuda/
> 
> _______________________________________________
> Ayuda mailing list
> Ayuda en linux org mx
> Para salir de la lista: http://mail.linux.org.mx/mailman/listinfo/ayuda/
_______________________________________________
Ayuda mailing list
Ayuda en linux org mx
Para salir de la lista: http://mail.linux.org.mx/mailman/listinfo/ayuda/



[Hilos de Discusión] [Fecha] [Tema] [Autor]