Skip to main content

Compatibilidad con tablas temporales

Tenga en cuenta que las tablas temporales no se replican. Por lo tanto, no se garantiza que los datos insertados en una tabla temporal estén disponibles en otras réplicas. El principal caso de uso de las tablas temporales es consultar o realizar joins con pequeños conjuntos de datos externos durante una única sesión.
ClickHouse admite tablas temporales con las siguientes características:
  • Las tablas temporales desaparecen cuando finaliza la sesión, incluso si se pierde la conexión.
  • Una tabla temporal usa el motor de tabla Memory si no se especifica ningún motor, y puede usar cualquier motor de tabla excepto Replicated y KeeperMap.
  • No se puede especificar la DB de una tabla temporal. Se crea fuera de las bases de datos.
  • No es posible crear una tabla temporal mediante una consulta DDL distribuida en todos los servidores del clúster (usando ON CLUSTER): esta tabla solo existe en la sesión actual.
  • Si una tabla temporal tiene el mismo nombre que otra tabla y una consulta especifica el nombre de la tabla sin indicar la DB, se usará la tabla temporal.
  • En el procesamiento de consultas distribuidas, las tablas temporales con el motor Memory utilizadas en una consulta se envían a los servidores remotos.

Sintaxis

Para crear una tabla temporal, utilice la siguiente sintaxis:
En la mayoría de los casos, las tablas temporales no se crean manualmente, sino al usar datos externos para una consulta o con (GLOBAL) IN distribuido. Para obtener más información, consulte las secciones correspondientes. Es posible usar tablas con ENGINE = Memory en lugar de tablas temporales.
Última modificación el 14 de agosto de 2026