Search Postgresql Archives

Re: how to make this database / query faster

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 




On Sat, Mar 15, 2008 at 5:04 PM, brian <brian@xxxxxxxxxxxxxxxx> wrote:
Richard Broersma wrote:
> On Sat, Mar 15, 2008 at 4:41 PM, mark <markkicks@xxxxxxxxx> wrote:
>
>> On Sat, Mar 15, 2008 at 4:37 PM, Richard Broersma <
>> richard.broersma@xxxxxxxxx> wrote:
>>
>>>  On Sat, Mar 15, 2008 at 4:21 PM, mark <markkicks@xxxxxxxxx> wrote:
>>>
>>>
>>>> select * from users where session_key is not Null order by id offset
>>>> OFFSET limit 300
>>>>
>>>>  One solution is to retain the last ID from the previous scan:
>>> SELECT *
>>>   FROM Users
>>>  WHERE session_key IS NOT NULL
>>>     AND id > your_last_id
>>>   LIMIT 300;
>>>
>> will this ensure that no row is repeated when i itereate over the table?
>> what are the rows ordered by?
>> thanks
>>
>
> Ya, sorry I forgot to include the order by.
>
>  SELECT *
>   FROM Users
>  WHERE session_key IS NOT NULL
>     AND id > your_last_id
>  ORDER BY id
>   LIMIT 300;
>
> Yes there will not be any repeated rows sence you are using a order set
> that who's ID are greated than the last set.
>

As there's an index on id would it be faster to transpose the WHERE
conditions?

WHERE id > your_last_id
AND session_key IS NOT NULL

I can't remember if the order of WHERE is significant.
brian,
i have an index on session_key also
but i dont have a session key combined on both. should i do that?


[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [Postgresql Jobs]     [Postgresql Admin]     [Postgresql Performance]     [Linux Clusters]     [PHP Home]     [PHP on Windows]     [Kernel Newbies]     [PHP Classes]     [PHP Books]     [PHP Databases]     [Postgresql & PHP]     [Yosemite]
  Powered by Linux