Re: Simple SQL Question

From: Franco Bruno Borghesi <franco(at)akyasociados(dot)com(dot)ar>
To: Andras Kutrovics <n-drew(at)freemail(dot)hu>
Cc: pgsql-sql(at)postgresql(dot)org
Subject: Re: Simple SQL Question
Date: 2004-11-05 18:09:20
Message-ID: 1099678157.39887.15.camel@taz.oficina
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-sql

wouldn't it be easier using offset & limit?: you always select from the
table with an itemkey,location order by clause. You save the current
offset between requests, and for every request you re-execute the query
with a different offset.

If you still want to go with what you already have, you should keep the
lastItemKey and lastLocaltion values between requests, and your where
clause should be something like:
WHERE (itemKey=:lastItemKey AND location>:lastLocation) OR
(itemKey>:lastItemKey)

hope it helps.

On Fri, 2004-11-05 at 13:54, Andras Kutrovics wrote:

> Hi All!
>
> In one of my application, I would like to implement incremental
> fetching. The problem is that I would like to run it
> from a stateless application server, so I have to tell where
> to begin fetching data. It is simple for a table which has single column
> primary key, but causes difficulties (at least for me) in
> a more-column primary key..
>
> Let say I have a table wich has the primary key: itemkey,location
>
> table1
> ------
> itemkey
> location
> ...
> --------
>
>
> select * from table1 LIMIT x
>
> gives me the first x row of the result.
> After that, I save the last value, and next time, I adjust
> the query as
>
> select * from table1 where itemkey>:lastvalue LIMIT x
>
> that should be enough for an 'Item' table, but I have another
> column in the primary key.
>
> let say, I have the following in Table1:
>
> itemkey location
> ------------------------
> 00001 00001
> 00001 00002
> ...
> 00005 00001
> 00005 00002
> 00005 00003 <--- lets say this is the last value
>
> next time i want to run a query, which starts from
>
> 00005 00004
> 00006 00005
>
> and so on..
>
> How can I specify that in sql?
> I dont want to use cursor:), I would like to do it in plain sql.
> (It it is possible).
>
> Thank you in advance
>
> Andras Kutrovics
>
> ---------------------------(end of broadcast)---------------------------
> TIP 1: subscribe and unsubscribe commands go to majordomo(at)postgresql(dot)org
>

In response to

Responses

Browse pgsql-sql by date

  From Date Subject
Next Message Tomasz Myrta 2004-11-05 18:09:55 Re: Simple SQL Question
Previous Message Bricklen 2004-11-05 17:13:46 Re: Simple SQL Question