Exécuter une requête avec un LIMIT/OFFSET et aussi obtenir le nombre total de lignes

Fins de mise en page, j'ai besoin d'une exécution d'une requête avec le LIMIT et OFFSET clauses. Mais j'ai aussi besoin d'un comptage du nombre de lignes qui seraient renvoyées par la requête sans le LIMIT et OFFSET clauses.

Je veux courir:

SELECT * FROM table WHERE /* whatever */ ORDER BY col1 LIMIT ? OFFSET ?

Et:

SELECT COUNT(*) FROM table WHERE /* whatever */

En même temps. Est-il un moyen de le faire, en particulier d'une manière qui permet à Postgres l'optimiser, de sorte qu'il est plus rapide que de courir à la fois individuellement?

InformationsquelleAutor Tim | 2015-03-05