Re: Consulta con query usando limit

From: Silvio Quadri <silvioq(at)gmail(dot)com>
To: juapabsan(at)tutopia(dot)com
Cc: pgsql-es-ayuda(at)postgresql(dot)org
Subject: Re: Consulta con query usando limit
Date: 2010-09-10 16:51:45
Message-ID: AANLkTin9QgATy6CCv4esxsgoHPc1QL0iH3FFsMq0RD=5@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-es-ayuda

El día 9 de septiembre de 2010 19:26, Juan Pablo Sandoval Rivera
<juapabsan(at)tutopia(dot)com> escribió:
> Buen día Lista
>
> Agradeceria me comentaran al respecto, tengo la siguiente consulta
>
> shell->psql colesci
> psql (8.4.2)
> Type "help" for help.
>
> colesci=# select sb.oid,sb.sabocopr,sb.sabofhci from saldbode sb where
> sb.saboarti='1003' and sb.sabofhci <= '2010-09-09' and sb.sabocopr != 0
> order by sb.sabofhci desc ;
>     oid    |     sabocopr     |  sabofhci
> -----------+------------------+------------
>  879676839 | 14693.6960236998 | 2009-12-04
>  879676723 | 14094.6000000000 | 2009-12-04
>  879676823 | 14630.8422959184 | 2009-12-03
>  879669539 | 12682.3767346939 | 2008-11-04
>  879671175 | 14565.3400000000 | 2008-11-04
>  879668961 | 12258.7100000000 | 2008-10-31
> (6 rows)
>
>
>
> Como se observa los registos viene organizados por la fecha de forma
> descendenrte, pero el caso que se tiene es que cuando se desea obtener el
> primer registro del set, el motor, segun se observa decide usar el segundo
> registro, es decir usa como
>
> segundo ordenamiento el oid, puede ser un fallo? como por obtener el primer
> registro, ? , por que razon la segunda consulta
>
> me arroja el segundo registro y no el primero ?
>
>
>
> colesci=# select sb.oid,sb.sabocopr,sb.sabofhci from saldbode sb where
> sb.saboarti='1003' and sb.sabofhci <= '2010-09-09' and sb.sabocopr != 0
> order by sb.sabofhci desc limit 1;
>     oid    |     sabocopr     |  sabofhci
> -----------+------------------+------------
>  879676723 | 14094.6000000000 | 2009-12-04
> (1 row)
>
> colesci=#
>
> Y claro el informe que estabamos evaluando nos arrojo diferencias entre la
> version  7.3.7 y 8.4.2
>
>
>
>  Alguna idea, gracias.
>

En la medida que no asegures unicidad con el order by, el motor tomará
cualquier registro en forma arbitraria y nunca podrás conocer de
antemano cuál de todas las repeticiones será la elegida.
Silvio

In response to

Browse pgsql-es-ayuda by date

  From Date Subject
Next Message Jaime Casanova 2010-09-10 16:52:42 Re: Consulta con query usando limit
Previous Message Juan Pablo Sandoval Rivera 2010-09-09 22:26:22 Consulta con query usando limit