【发布时间】:2018-06-24 15:46:42
【问题描述】:
我已经搜索了一段时间,但似乎找不到明确的答案...我正在尝试从终端运行 psql 脚本,同时传递一个表变量名和另一个变量作为psql 脚本。
BASH 命令:
psql db1 -U user1 -f '/.../Desktop/.../sample.sql' -v table=pg2 -v v1="'2018-02-01'";
PSQL 脚本:
SELECT count(*) FROM :table WHERE datekey = :v1;
以上工作。但是,我希望能够将表名和附加变量转换为脚本本身中的字符串,以便可以在我定义的另一个函数中使用它。例如,我希望 pg2 的表名可以作为字符串 'pg2' 使用。与 datekey 变量类似的要求。这可能吗?我的观察是,只有在 CRUD 操作或 WHERE 子句中使用时才能传递变量。
【问题讨论】:
标签: bash postgresql variables psql