Saltar al contenido principal
Permite ejecutar varias sentencias en paralelo.

Sintaxis

statement1 PARALLEL WITH statement2 [PARALLEL WITH statement3 ...]
Ejecuta las sentencias statement1, statement2, statement3, … en paralelo entre sí. La salida de esas sentencias se descarta. En muchos casos, ejecutar sentencias en paralelo puede ser más rápido que ejecutarlas simplemente en secuencia. Por ejemplo, statement1 PARALLEL WITH statement2 PARALLEL WITH statement3 probablemente sea más rápido que statement1; statement2; statement3.

Ejemplos

Crea dos tablas en paralelo:
CREATE TABLE table1(x Int32) ENGINE = MergeTree ORDER BY tuple()
PARALLEL WITH
CREATE TABLE table2(y String) ENGINE = MergeTree ORDER BY tuple();
Elimina dos tablas en paralelo:
DROP TABLE table1
PARALLEL WITH
DROP TABLE table2;

Configuración

La configuración max_threads controla cuántos hilos se crean.

Comparación con UNION

La cláusula PARALLEL WITH se parece un poco a UNION, que también ejecuta sus operandos en paralelo. Sin embargo, hay algunas diferencias:
  • PARALLEL WITH no devuelve ningún resultado de la ejecución de sus operandos; solo puede relanzar una excepción si se produce alguna;
  • PARALLEL WITH no requiere que sus operandos tengan el mismo conjunto de columnas de resultados;
  • PARALLEL WITH puede ejecutar cualquier sentencia (no solo SELECT).
Última modificación el 10 de junio de 2026