returning does not act as expected after viewing documentation

Started by PG Bug reporting formover 6 years ago3 messagesdocs
Jump to latest
#1PG Bug reporting form
noreply@postgresql.org

The following documentation comment has been logged on the website:

Page: https://www.postgresql.org/docs/11/dml-returning.html
Description:

With the following query:

update batch_log
set status=('in-progress'),
updated_at=now()
where status = ('pending')
and id = (
select id
from batch_log
where status = ('pending')
order by priority desc, updated_at asc
limit 1
)
returning id, batch_log.update_at
;

I get the following error message:

column batch_log.update_at does not exist
LINE 14: returning id, batch_log.update_at
HINT: Perhaps you meant to reference the column "batch_log.updated_at".

This does not make a whole lot of sense. It is recommending that I do what I
am doing!

Also I don't see why this would fail.

I am on PostgreSQL 11 latest official docker image as of today's date
(2019-09-23).

#2David G. Johnston
david.g.johnston@gmail.com
In reply to: PG Bug reporting form (#1)
Re: returning does not act as expected after viewing documentation

On Mon, Sep 23, 2019 at 2:45 PM PG Doc comments form <noreply@postgresql.org>
wrote:

update batch_log
set status=('in-progress'),
updated_at=now()
[...]
returning id, batch_log.update_at
;

column batch_log.update_at does not exist
LINE 14: returning id, batch_log.update_at
HINT: Perhaps you meant to reference the column "batch_log.updated_at".

This does not make a whole lot of sense. It is recommending that I do what
I
am doing!

Also I don't see why this would fail.

Its informing you, apparently correctly, of a possible typo in your query.
You wrote: returning ... "batch_log.update_at" but the spelling for that
field is in past tense "batch_log.updated_at" - note the "d" on the end of
the word "update".

David J.

#3lennart rolland
lennartrolland@gmail.com
In reply to: David G. Johnston (#2)
Re: returning does not act as expected after viewing documentation

Facepalm.

Please disregard my rookie mistake!

On Tue, Sep 24, 2019, 00:18 David G. Johnston <david.g.johnston@gmail.com>
wrote:

Show quoted text

On Mon, Sep 23, 2019 at 2:45 PM PG Doc comments form <
noreply@postgresql.org> wrote:

update batch_log
set status=('in-progress'),
updated_at=now()
[...]
returning id, batch_log.update_at
;

column batch_log.update_at does not exist
LINE 14: returning id, batch_log.update_at
HINT: Perhaps you meant to reference the column "batch_log.updated_at".

This does not make a whole lot of sense. It is recommending that I do
what I
am doing!

Also I don't see why this would fail.

Its informing you, apparently correctly, of a possible typo in your
query. You wrote: returning ... "batch_log.update_at" but the spelling for
that field is in past tense "batch_log.updated_at" - note the "d" on the
end of the word "update".

David J.