Here is how I doi it when I need to...
BEGIN;
CREATE TEMP SEQUENCE row_num;
SELECT next_val('row_num'), relname FROM pg_class LIMIT 3;
ROLLBACK;
You could also do this with a Set Returning Fucntion so that it returns the
nextval in a simular way
On Thursday 17 July 2003 08:03, Hans-Jürgen Schönig wrote:
I had a brief look at DB2's row_number function which seems to be pretty
useful.
What it does is:
test=# SELECT row_number(), relname FROM pg_class LIMIT 3;
row_number |relname
+
1 | pg_description
2 | pg_group
3 | pg_proc
(3 rows)
This makes sense to me and I need this feature from time to time. My
question is: How do I find out when a query starts? Inside a table
function I can call SRF_IS_FIRSTCALL() to see when it is called first.
Is there an easy way to check that inside an ordinary C function
returning just one value?
Currently my function counts the number of times it has been called per
connection. I could write a second function for resetting the counter
but this is not too smart ...
Regards,
Hans
--
Darcy Buskermolen
Wavefire Technologies Corp.
ph: 250.717.0200
fx: 250.763.1759
http://www.wavefire.com
---(end of broadcast)---
TIP 5: Have you checked our extensive FAQ?
http://www.postgresql.org/docs/faqs/FAQ.html