Re: question about docs on copy command

Tom Lane <[email protected]> Fri, 06 Sep 2019 10:01:25 -0400
Newsgroups gmane.comp.db.postgresql.novice
Message-ID <[email protected]>
Platon Pronko <[email protected]> writes:
> I'm having a little trouble with docs of COPY command: https://www.postgresql.org/docs/11/sql-copy.html

> Excerpt from synopsis:

>> COPY { table_name [ ( column_name [, ...] ) ] | ( query ) }
>> TO { 'filename' | PROGRAM 'command' | STDOUT }
>> [ [ WITH ] ( option [, ...] ) ]
>> 
>> where option can be one of:
>> 
>> FORMAT format_name

> This led me to beleive that the following command should be valid:

> copy (select 1) to stdout with format csv;

You missed the parentheses.  This works:

regression=# copy (select 1) to stdout with (format csv);
1

It does require a bit of attention to tell the metacharacters (braces
and square brackets) from the literal punctuation :-(

> This command executes normally:
> copy (select 1) to stdout with csv;

IIRC, that's valid per the "old syntax" described near the end of the
page.  The new syntax uses parens.

			regards, tom lane