url cria uma tabela a partir de uma URL, com format e structure especificados.
A função url pode ser usada em consultas SELECT e INSERT sobre dados em tabelas URL.
Sintaxe
Parâmetros
Valor retornado
URL definida.
Exemplos
String e UInt32 a partir de um servidor HTTP que responde no formato CSV.
URL em uma tabela:
Globs na URL
{ } são usados para gerar um conjunto de shards ou para especificar endereços de failover. Para ver os tipos de padrões compatíveis e exemplos, consulte a descrição da função remote.
O caractere | dentro dos padrões é usado para especificar endereços de failover. Eles são percorridos na mesma ordem em que aparecem no padrão. O número de endereços gerados é limitado pela configuração glob_expansion_max_elements.
Colunas Virtuais
_path— Caminho até aURL. Tipo:LowCardinality(String)._file— Nome do recurso daURL. Tipo:LowCardinality(String)._size— Tamanho do recurso em bytes. Tipo:Nullable(UInt64). Se o tamanho for desconhecido, o valor éNULL._time— Data e hora da última modificação do arquivo. Tipo:Nullable(DateTime). Se esse horário for desconhecido, o valor éNULL._headers- Cabeçalhos da resposta HTTP. Tipo:Map(LowCardinality(String), LowCardinality(String)).
configuração use_hive_partitioning
use_hive_partitioning é definida como 1, o ClickHouse detecta o particionamento no estilo Hive no caminho (/name=value/) e permite usar colunas de partição como colunas virtuais na consulta. Essas colunas virtuais terão os mesmos nomes do caminho particionado.
Exemplo
Use a coluna virtual criada com o particionamento no estilo Hive
Resolução de URLs relativas
url. Quando url_base está definida e o argumento da função é uma referência relativa, ela é resolvida com base na URL base, de acordo com a RFC 3986.
As regras de resolução são:
- Relativa ao caminho (por exemplo,
data.csv): combinada com o caminho da URL base — tudo após a última/no caminho base é substituído. A barra no final faz diferença:https://example.com/dir/+data.csvresulta emhttps://example.com/dir/data.csv, mashttps://example.com/dir+data.csvresulta emhttps://example.com/data.csv. Os segmentos de ponto (./e../) são normalizados. - Relativa ao host (por exemplo,
/test/data.csv): resolvida usando o esquema e o host da URL base. - Relativa ao esquema (por exemplo,
//other.com/test/data.csv): resolvida usando o esquema da URL base. - Apenas consulta (por exemplo,
?x=1): anexada ao caminho base completo, substituindo qualquer consulta ou fragmento existente. - Apenas fragmento (por exemplo,
#frag): anexado à URL base, preservando a consulta e substituindo qualquer fragmento existente. - Vazia: retorna a URL base sem fragmento.
- URL absoluta: é passada sem alterações;
url_baseé ignorada.
Configurações de armazenamento
- engine_url_skip_empty_files - permite ignorar arquivos vazios durante a leitura. Desativado por padrão.
- enable_url_encoding - permite ativar/desativar a decodificação/codificação do caminho no URI. Ativado por padrão.
- url_base - URL base para resolver URLs relativas passadas para a função
url.
Permissões
url requer a permissão CREATE TEMPORARY TABLE. Portanto, ela não funciona para usuários com a configuração readonly = 1. No mínimo, é necessário readonly = 2.