From: | Bjørn T Johansen <btj(at)havleik(dot)no> |
---|---|
To: | pgsql-general(at)postgresql(dot)org |
Subject: | Re: Strange limit and offset behaviour.... |
Date: | 2009-02-07 21:57:19 |
Message-ID: | 20090207225719.07a4240d@pennywise.havleik.no |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-general |
On Sat, 7 Feb 2009 15:49:49 -0600
"Adam Rich" <adam(dot)r(at)sbcglobal(dot)net> wrote:
> >
> > I have the following sql:
> >
> > SELECT * from table order by dato asc limit 20 offset 0
> >
> >
> > This gives me different rows than the 20 first rows when running the
> > following sql:
> >
> > SELECT * from table order by dato asc
> >
> >
> > Shouldn't the 20 first rows in the second sql statment be the same 20
> > rows that is returned in the first statement
> > or am I missing something?
> >
>
> Not necessarily. In your example query, if "dato" was not a unique
> column, and there were some duplicates, the "top 20" values is not
> a defined set. Adding the offset clause might cause a different
> query plan, resulting in a different ordering of the duplicate values.
>
>
I found out that if I created an index on the dato field, then I got the same 20 rows... Does that make sense or is
it just a coincedense?
BTJ
From | Date | Subject | |
---|---|---|---|
Next Message | Grzegorz Jaśkiewicz | 2009-02-07 22:03:37 | Re: Strange limit and offset behaviour.... |
Previous Message | Adam Rich | 2009-02-07 21:49:49 | Re: Strange limit and offset behaviour.... |