El motor de tabla (tipo de tabla) determina:
- Cómo y dónde se almacenan los datos, dónde se escriben y de dónde se leen.
- Qué consultas se admiten y cómo.
- El acceso concurrente a los datos.
- El uso de índices, si los hay.
- Si es posible la ejecución multihilo de solicitudes.
- Los parámetros de replicación de datos.
Los motores de tabla más versátiles y funcionales para cargas de trabajo elevadas. La característica común de estos motores es la rápida inserción de datos con su posterior procesamiento en segundo plano. Los motores de la familia MergeTree admiten replicación de datos (con las versiones Replicated* de estos motores), particionado, índices secundarios de omisión de datos y otras funcionalidades no disponibles en otros motores.
Motores de la familia:
Motores ligeros con funcionalidad mínima. Son más eficaces cuando necesita escribir rápidamente muchas tablas pequeñas (hasta aproximadamente 1 millón de filas) y leerlas después en conjunto.
Motores de la familia:
Motores para comunicarse con otros sistemas de almacenamiento y procesamiento de datos.
Motores de la familia:
Motores de la familia:
Una columna virtual es un atributo inherente del motor de tabla definido en el código fuente del motor.
No debe especificar columnas virtuales en la consulta CREATE TABLE, y no puede verlas en los resultados de las consultas SHOW CREATE TABLE ni DESCRIBE TABLE. Las columnas virtuales también son de solo lectura, por lo que no puede insertar datos en ellas.
Para seleccionar datos de una columna virtual, debe especificar su nombre en la consulta SELECT. SELECT * no devuelve valores de las columnas virtuales.
Si crea una tabla con una columna que tenga el mismo nombre que una de las columnas virtuales de la tabla, la columna virtual deja de ser accesible. No recomendamos hacerlo. Para evitar conflictos, los nombres de las columnas virtuales suelen llevar un guion bajo como prefijo.
-
_table — Contiene el nombre de la tabla de la que se leyeron los datos. Tipo: String.
Independientemente del motor de tabla que se utilice, cada tabla incluye una columna virtual universal llamada _table.
Al consultar una tabla con el motor de tabla Merge, puede establecer condiciones constantes sobre _table en la cláusula WHERE/PREWHERE (por ejemplo, WHERE _table='xyz'). En este caso, la operación de lectura se realiza solo en aquellas tablas en las que se cumple la condición sobre _table, por lo que la columna _table actúa como un índice.
Al usar consultas con el formato SELECT ... FROM (... UNION ALL ...), podemos determinar de qué tabla real proceden las filas devueltas especificando la columna _table.
Última modificación el 10 de junio de 2026