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

This is a vertica query in sql file :SCHEMA_NAME and :TABLE_NAME in sql file is not getting replaced by the argument passed probably because of single quotes

mauro
  • 5,730
  • 2
  • 26
  • 25
Swathi8038
  • 96
  • 2
  • 11

1 Answers1

3

Try this:

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

If you want to use different variables for SCHEMA and TABLE, you can:

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

And then:

SELECT SWAP_PARTITIONS_BETWEEN_TABLES
    (:schema||'.'||:table,:PARTITION_KEY,...);
mauro
  • 5,730
  • 2
  • 26
  • 25