Skip to main content
El motor Merge (no debe confundirse con MergeTree) no almacena datos por sí mismo, sino que permite leer al mismo tiempo de cualquier número de otras tablas. La lectura se paraleliza automáticamente. No se admite la escritura en una tabla. Al leer, se utilizan los índices de las tablas que efectivamente se están leyendo, si existen.

Crear una tabla

Parámetros del motor

db_name

db_name — Valores posibles:
  • nombre de la base de datos,
    • expresión constante que devuelve una cadena con el nombre de una base de datos; por ejemplo, currentDatabase(),
    • REGEXP(expression), donde expression es una expresión regular para hacer coincidir los nombres de las bases de datos.

tables_regexp

tables_regexp — Una expresión regular para coincidir con los nombres de las tablas en la DB o las DB especificadas. Expresiones regulares: re2 (admite un subconjunto de PCRE), sensible a mayúsculas y minúsculas. Consulte las notas sobre el escape de símbolos en las expresiones regulares en la sección “match”.

Uso

Al seleccionar tablas para leer, la propia tabla Merge no se selecciona, aunque coincida con la expresión regular. Esto se hace para evitar bucles. Es posible crear dos tablas Merge que intenten leer indefinidamente los datos de la otra, pero no es una buena idea. La forma habitual de usar el motor Merge es trabajar con una gran cantidad de tablas TinyLog como si fueran una sola tabla.

Ejemplos

Ejemplo 1 Considere dos bases de datos: ABC_corporate_site y ABC_store. La tabla all_visitors contendrá los ID de las tablas visitors de ambas bases de datos.
Ejemplo 2 Supongamos que tiene una tabla antigua, WatchLog_old, y que decidió cambiar el esquema de particionado sin mover los datos a una tabla nueva, WatchLog_new, y necesita ver los datos de ambas tablas.

Columnas virtuales

  • _table — El nombre de la tabla desde la que se leyeron los datos. Tipo: String. Si filtra por _table (por ejemplo, WHERE _table='xyz'), solo se leen las tablas que cumplen la condición de filtrado.
  • _database — Contiene el nombre de la base de datos desde la que se leyeron los datos. Tipo: String.
Vea también
Última modificación el 3 de julio de 2026