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

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

4

1 回答 1

3

试试这个:

\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,...);
于 2017-08-08T07:54:27.860 回答