sql 文件中的变量带有单引号

Variable in sql file with single quote

SELECT SWAP_PARTITIONS_BETWEEN_TABLES
(':SCHEMA_NAME.:TABLE_NAME',:PARTITION_KEY,:PARTITION_KEY,
':SCHEMA_NAME.:TABLE_NAME');

这是 sql 文件中的一个 vertica 查询 sql 文件中的 :SCHEMA_NAME:TABLE_NAME 未被传递的参数替换可能是因为单引号

试试这个:

\set source '''src_schema.src_table'''
\set target '''tgt_schema.tgt_table'''
SELECT SWAP_PARTITIONS_BETWEEN_TABLES
    (:source,:PARTITION_KEY,:PARTITION_KEY,:target);

如果您想为 SCHEMA 和 TABLE 使用不同的变量,您可以:

\set schema '''myschema'''
\set table '''mytable'''

然后:

SELECT SWAP_PARTITIONS_BETWEEN_TABLES
    (:schema||'.'||:table,:PARTITION_KEY,...);