Skip to content
ClickHouse Docs
ClickHouse DocsClickHouse Docs

EXCHANGE

Intercambia de forma atómica los nombres de dos tablas o diccionarios. Esta tarea también puede realizarse con una consulta RENAME usando un nombre temporal, pero en ese caso la operación no es atómica.

Sintaxis

EXCHANGE TABLES|DICTIONARIES [db0.]name_A AND [db1.]name_B [ON CLUSTER cluster]

EXCHANGE TABLES

Intercambia los nombres de dos tablas.

Sintaxis

EXCHANGE TABLES [db0.]table_A AND [db1.]table_B [ON CLUSTER cluster]

EXCHANGE DE VARIAS TABLAS

Puede intercambiar varios pares de tablas en una sola consulta separándolos con comas.

Ejemplo

Querysql
-- Crear tablas
CREATE TABLE a (a UInt8) ENGINE=Memory;
CREATE TABLE b (b UInt8) ENGINE=Memory;
CREATE TABLE c (c UInt8) ENGINE=Memory;
CREATE TABLE d (d UInt8) ENGINE=Memory;

-- Intercambiar dos pares de tablas en una sola consulta
EXCHANGE TABLES a AND b, c AND d;

SHOW TABLE a;
SHOW TABLE b;
SHOW TABLE c;
SHOW TABLE d;
Responsesql
-- Ahora la tabla 'a' tiene la estructura de 'b', y la tabla 'b' tiene la estructura de 'a'

EXCHANGE DICTIONARIES

Intercambia los nombres de dos diccionarios.

Sintaxis

EXCHANGE DICTIONARIES [db0.]dict_A AND [db1.]dict_B [ON CLUSTER cluster]

Véase también

Navigation