Skip to main content
Manipula los datos que coinciden con la expresión de filtrado especificada. Se implementa como una mutación.
El prefijo ALTER TABLE hace que esta sintaxis sea distinta de la de la mayoría de los demás sistemas que admiten SQL. Su objetivo es indicar que, a diferencia de consultas similares en bases de datos OLTP, esta es una operación costosa que no está pensada para usarse con frecuencia.
filter_expr debe ser de tipo UInt8. Esta consulta actualiza los valores de las columnas especificadas con los valores de las expresiones correspondientes en las filas para las que filter_expr toma un valor distinto de cero. Los valores se convierten al tipo de la columna mediante el operador CAST. No se admite actualizar columnas que se usan en el cálculo de la clave primaria o de la clave de partición. Una consulta puede contener varios comandos separados por comas. El carácter síncrono del procesamiento de la consulta se define mediante la configuración mutations_sync. De forma predeterminada, es asíncrona. Véase también

Columnas materializadas

Una columna MATERIALIZED cuya expresión hace referencia a una columna actualizada se recalcula mediante la mutación, por lo que su valor almacenado se mantiene coherente con los nuevos datos.

Columnas calculadas a partir de columnas EPHEMERAL

Una columna EPHEMERAL existe únicamente durante un INSERT y nunca se almacena, por lo que una columna MATERIALIZED calculada a partir de ella no puede volver a calcularse mediante una mutación. Esta columna conserva el valor calculado en el momento del INSERT, que deja de coincidir con su expresión:
m es 8, el valor calculado durante el INSERT, y no 2 + 7: el valor de e no está disponible fuera del INSERT que lo proporcionó. La mutación escribe una advertencia en el registro del servidor cuando omite una columna por este motivo. Para actualizar dicha columna, vuelva a insertar las filas afectadas mediante INSERT.
Última modificación el 18 de agosto de 2026