Excerpts from motum hesa's message of mié jul 27 21:03:24 -0400 2011:
> El 27/07/11, Alvaro Herrera <alvhe...@alvh.no-ip.org> escribió:
> > Excerpts from motum hesa's message of mar jul 26 19:36:37 -0400 2011:

> La columna viajeactivo es una referencia a otra tabla, lo por lo que
> me di cuenta que me hace falta una llave foranea ahi, ya lo platique
> con los programadores ya que esto les pega y en la primera oportunidad
> lo hago.
> 
> Como son demasiados registros tarda mucho cambiar las columnas pero ya
> estoy agregando la propiedad "NOT NULL" a la mayoria de los campos.
> Aunque parece que voy a tardar un buen rato.

Ten presente que puedes agregar restricciones NOT NULL a varios campos
de una tabla a la vez, no tienes por qué ir de uno en uno:

alvherre=# create table motum (a int, b int);
alCREATE TABLE
alvherre=# alter table motum alter a set not null, alter b set not null;
ALTER TABLE
alvherre=# \d motum
       Tabla «public.motum»
 Columna |  Tipo   | Modificadores 
---------+---------+---------------
 a       | integer | not null
 b       | integer | not null


> > Puedes mirar el código fuente (con bastantes comentarios que explican lo
> > que puede y lo que no puede hacer) acá:
> 
> Leyendo el codigo entendi todo lo que me decias y pues cambie la
> consulta a que se consulte cada unidad por separado en vez de todas
> las unidades, con eso quite el group by y use el limit y por cada
> unidad tarda algunos milisegundos.. haciendo cuentas cada flota tiene
> aprox 100 unidades multiplicando esto por los milisegundos que tarda
> cada unidad resulta mas rapido hacer un ciclo en programación que
> consulte cada unidad de la flota.. por lo que se harian 100 consulta
> con el limit 1... Aqui el indice que sugeriste ayudo bastante. Muchas
> gracias.

Te iba a sugerir eso pero parece que olvidé comentarlo.  Que bueno
que haya funcionado :-)

> > (Este es el de 9.0.  Si estás usando otra versión tendrás que buscar el
> > mismo archivo a partir de otro HEAD).
> 
> Para opciones de repliacion planeadas mas adelante voy a pasarme a la
> version 9 de postgres ( ahorita estoy en la 8.4),  crees que ayude
> tambien a las consultas?

Puede ser.  Todas las versiones traen una u otra mejora al optimizador,
así que es bien posible que alguna de tus consultas mejore de alguna
forma.  O quizás no.  No me acuerdo qué cambios hubo en el optimizador
en 9.0.


> Muchas gracias por todos tus comentarios Álvaro ayudaron bastate a
> resolver dudas y mejorar mi tabla.  Felicitaciones a los programadores
> el codigo esta muy explicito y excelentemente bien comentado.

Sí, por eso me gusta trabajar en este código.

-- 
Álvaro Herrera <alvhe...@alvh.no-ip.org>
-
Enviado a la lista de correo pgsql-es-ayuda (pgsql-es-ayuda@postgresql.org)
Para cambiar tu suscripci�n:
http://www.postgresql.org/mailpref/pgsql-es-ayuda

Responder a