T. Por exemplo, uma coluna do tipo Nullable(Int8) pode armazenar valores do tipo Int8, e as linhas que não tiverem um valor armazenarão NULL.
T não pode ser nenhum dos seguintes tipos de dados compostos:
No entanto, tipos de dados compostos podem conter valores do tipo Nullable, por exemplo, Array(Nullable(Int8)) ou Tuple(Nullable(String), Nullable(Int64)).
Experimental: Tuplas Nullable
- Nullable(Tuple(…)) tem suporte quando
allow_experimental_nullable_tuple_type = 1está habilitado.
Nullable não pode ser incluído em índices da tabela.
NULL é o valor padrão de qualquer tipo Nullable, salvo especificação em contrário na configuração do servidor ClickHouse.
Recursos de armazenamento
Nullable em uma coluna de tabela, o ClickHouse usa um arquivo separado com máscaras NULL, além do arquivo normal com os valores. As entradas no arquivo de máscaras permitem que o ClickHouse diferencie, em cada linha da tabela, entre NULL e o valor padrão do tipo de dado correspondente. Por causa desse arquivo adicional, uma coluna Nullable consome mais espaço de armazenamento do que uma coluna normal semelhante.
Usar
Nullable quase sempre afeta negativamente o desempenho. Tenha isso em mente ao projetar seus bancos de dados.Encontrando NULL
NULL em uma coluna usando a subcoluna null, sem precisar ler a coluna inteira. Ela retorna 1 se o valor correspondente for NULL e 0, caso contrário.
Exemplo
Query
Response