Syntax error when combining --set and --command has me stumped - Mailing list pgsql-general

From Ron
Subject Syntax error when combining --set and --command has me stumped
Date
Msg-id 352ceea1-029d-726e-89b5-74be4946e67b@gmail.com
Whole thread Raw
Responses Re: Syntax error when combining --set and --command has me stumped  ("David G. Johnston" <david.g.johnston@gmail.com>)
Re: Syntax error when combining --set and --command has me stumped  (Adrian Klaver <adrian.klaver@aklaver.com>)
List pgsql-general
$ alias psql12
alias psql12='/usr/lib/postgresql/12/bin/psql -p5433'

This works ask expected:

$ psql12 --set num=42 -ac "\echo :num"
echo :num
42

And so does this:

$ psql12 --set num=42
psql (12.11 (Ubuntu 12.11-1.pgdg18.04+1))
Type "help" for help.

postgres=# select :num;
  ?column?
----------
        42
(1 row)


But trying to use a variable (both with and without single quotes) in a 
--command statement other than "\echo" throws a syntax error at the colon:

$ psql12 --set num=42 -ac "select :num;"
select :num;
ERROR:  syntax error at or near ":"
LINE 1: select :num;
                ^
$ psql12 --set num=42 -ac "select :'num';"
select :'num';
ERROR:  syntax error at or near ":"
LINE 1: select :'num';
                ^

What secret sauce am I missing to get this to work?

-- 
Angular momentum makes the world go 'round.



pgsql-general by date:

Previous
From: "Peter J. Holzer"
Date:
Subject: Re: Was my question inappropriate for postgres?
Next
From: "David G. Johnston"
Date:
Subject: Re: Syntax error when combining --set and --command has me stumped