From: | Adrian Klaver <adrian(dot)klaver(at)aklaver(dot)com> |
---|---|
To: | Torsten Förtsch <tfoertsch123(at)gmail(dot)com>, PostgreSQL mailing lists <pgsql-general(at)postgresql(dot)org> |
Subject: | Re: functions with side effect |
Date: | 2018-07-19 16:35:54 |
Message-ID: | ebb85d10-94a2-505a-8e8e-d4bf2f59e5f8@aklaver.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-general |
On 07/19/2018 07:15 AM, Torsten Förtsch wrote:
> Hi,
>
> assuming
>
> SELECT nextval('s'), currval('s');
>
> or
>
> SELECT * FROM (VALUES (nextval('s'), currval('s'))) t;
>
> is there any guarantee that the 2 output values are the same?
Assuming you are only working in single session:
https://www.postgresql.org/docs/10/static/functions-sequence.html
"currval
Return the value most recently obtained by nextval for this
sequence in the current session. (An error is reported if nextval has
never been called for this sequence in this session.) Because this is
returning a session-local value, it gives a predictable answer whether
or not other sessions have executed nextval since the current session did."
>
> Thanks,
> Torsten
--
Adrian Klaver
adrian(dot)klaver(at)aklaver(dot)com
From | Date | Subject | |
---|---|---|---|
Next Message | Torsten Förtsch | 2018-07-19 16:43:48 | Re: functions with side effect |
Previous Message | Alessandro Aste | 2018-07-19 16:07:16 | Re: cache lookup failed for attribute 1 of relation XXXXXX |