Paged Query

From: Hermann Matthes <hermann(dot)matthes(at)web(dot)de>
To: pgsql-performance(at)postgresql(dot)org
Subject: Paged Query
Date: 2012-07-04 12:25:28
Message-ID: 4FF43638.5080301@web.de
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-performance

I want to implement a "paged Query" feature, where the user can enter in
a dialog, how much rows he want to see. After displaying the first page
of rows, he can can push a button to display the next/previous page.
On database level I could user "limit" to implement this feature. My
problem now is, that the user is not permitted to view all rows. For
every row a permission check is performed and if permission is granted,
the row is added to the list of rows sent to the client.
If for example the user has entered a page size of 50 and I use "limit
50" to only fetch 50 records, what should I do if he is only permitted
to see 20 of these 50 records? There may be more records he can view.
But if I don't use "limit", what happens if the query would return
5,000,000 rows? Would my result set contain 5,000,000 rows or would the
performance of the database go down?

Thanks in advance
Hermann

Responses

Browse pgsql-performance by date

  From Date Subject
Next Message Daniel Farina 2012-07-04 13:39:38 Re: The need for clustered indexes to boost TPC-V performance
Previous Message PV 2012-07-04 10:35:47 Re: static virtual columns as result?