Skip site navigation (1) Skip section navigation (2)

Re: Ayuda Consulta de fechas

From: Alvaro Herrera <alvherre(at)alvh(dot)no-ip(dot)org>
To: motum hesa <motums(at)gmail(dot)com>
Cc: Ayuda <pgsql-es-ayuda(at)postgresql(dot)org>
Subject: Re: Ayuda Consulta de fechas
Date: 2011-07-28 01:40:52
Message-ID: 1311816979-sup-9712@alvh.no-ip.org (view raw or flat)
Thread:
Lists: pgsql-es-ayuda
Excerpts from motum hesa's message of mié jul 27 21:03:24 -0400 2011:
> El 27/07/11, Alvaro Herrera <alvherre(at)alvh(dot)no-ip(dot)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 <alvherre(at)alvh(dot)no-ip(dot)org>

In response to

Responses

pgsql-es-ayuda by date

Next:From: motum hesaDate: 2011-07-28 04:42:16
Subject: Re: Ayuda Consulta de fechas
Previous:From: motum hesaDate: 2011-07-28 01:03:24
Subject: Re: Ayuda Consulta de fechas

Privacy Policy | About PostgreSQL
Copyright © 1996-2014 The PostgreSQL Global Development Group