Ihar Hancharenka ba944b74e5 m
2025-01-14 23:14:11 +03:00

29 строки
578 B
Plaintext

\set var val
\echo :var
... \gset
-- only one line should be resulted
select now() as curr_time \gset
https://psql-tips.org/psql_tips_all.html#tip037
$ cat query.sql
select * from :tablename;
$ psql -v tablename=test -f query.sql
id | value
----+-------
1 | test
(1 row)
$ cat query2.sql
select * from test where value = :'var';
$ psql --set var=test -f query2.sql
id | value
----+-------
1 | test
(1 row)
select oid as tsoid from pg_tablespaces where spcname = 'ts' \gset
select datname from pg_database where oid in (select pg_tablespace_databases(:tsoid));