Skip to main content

Adicionando uma coluna a uma tabela

Vamos usar o clickhouse-local:
Vamos imaginar a seguinte tabela:
Vamos adicionar um registro:
E agora consulte a tabela events:

Adicionando uma nova coluna

Agora, vamos supor que vamos adicionar uma nova coluna chamada favoriteNumber, que será do tipo Float64. Podemos fazer isso usando a cláusula ALTER TABLE...ADD COLUMN:
Se consultarmos a tabela events, veremos a seguinte saída:
A linha Alexey fica com o valor padrão 7, pois essa coluna não existia quando adicionamos essa linha. Em seguida, vamos adicionar outra coluna:
Se consultarmos a tabela events, veremos a seguinte saída:

Modificando o valor padrão de uma coluna

Se modificarmos a coluna favoriteNumber para usar um tipo diferente com a cláusula ALTER TABLE...MODIFY COLUMN, a coisa fica interessante:
Se fizermos outra consulta em events, veremos esta saída:
Tyler mantém o valor 7, que era o padrão quando essa linha foi criada. Alexey passa a usar o novo padrão de 99 porque a coluna favoriteNumber não existia quando essa linha foi criada. Se quisermos que a linha de Alexey use o padrão atual imediatamente, precisamos chamar OPTIMIZE TABLE para forçar a gravação dos padrões atuais em disco:
Depois de fazer isso, suponha que alteremos o valor padrão novamente:
Em seguida, insira outra linha:
Por fim, vamos consultar events mais uma vez:
Tanya assume o novo valor padrão de 21, mas Alexey fica com o valor padrão antigo de 99.

Controlando a posição da coluna na tabela

Quando adicionamos uma nova coluna, por padrão ela é adicionada ao final da tabela. Mas podemos usar as cláusulas FIRST e AFTER para controlar onde a coluna será posicionada. Por exemplo, se quisermos adicionar uma coluna chamada favoriteColor após a coluna name, podemos fazer isso:
Vamos consultar events:
E, se quiséssemos adicionar uma coluna favoriteDatabase e fazer com que ela ficasse em primeiro lugar na lista, poderíamos fazer isso:
E vamos ver a definição da tabela:
Última modificação em 3 de julho de 2026