Re: Frage zu CURSOR

From: Andreas Seltenreich <seltenreich(at)gmx(dot)de>
To: Andreas Kretschmer <akretschmer(at)despammed(dot)com>
Cc: pgsql-de-allgemein(at)postgresql(dot)org
Subject: Re: Frage zu CURSOR
Date: 2005-05-02 17:25:32
Message-ID: 87oebta6b7.fsf@gate450.dyndns.org
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-de-allgemein

Andreas Kretschmer schrob:

> Mit Cursorn zu arbeiten scheint ja sinnvoll zu sein, ich suche aber noch
> etwas wie:
>
> select count(*) from CURSOR;
>
> Also, wie bekomme ich die Gesamzzahl der Tupel eines CURSORs raus?

Ich vermute mal, du willst den User im Ergebnis blättern lassen, und
ihm auch die Anzahl der Treffer/Seiten mitteilen. In dem Fall ist das
Problem ja nicht auf Cursors beschränkt, es bestünde auch bei Abfragen
per LIMIT + OFFSET.

Ich denke hier käme man in beiden Fällen nicht um eine zweite Anfrage
(select count(*) ohne Cursor bzw. ohne Limit + Offset) beim /ersten/
Request herum. Beim Zählen hättest Du den Vorteil, daß du hier die
Fremdschlüssel nicht auflösen mußt.

Wenn's nur um die Frage geht, ob es überhaupt noch weitere Seiten zum
blättern gibt, würde sich anbieten, per LIMIT + OFFSET bzw. dem Cursor
einfach einen Datensatz mehr wie gewünscht Anzufordern, und
entsprechend 'nen "weiter..."-Button anzubieten.

HTH
Andreas

In response to

Browse pgsql-de-allgemein by date

  From Date Subject
Next Message Peter Eisentraut 2005-05-04 17:52:45 PostgreSQL auf dem LinuxTag
Previous Message Mike Schubert 2005-05-02 15:11:41 Re: Frage zu view