Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Retorna a linha de versão selecionada pela cláusula do WITH VERSION (...) fluxo anexo para o snapshot que está sendo processado.
Essa função está disponível apenas dentro da FROM SNAPSHOT (...) cláusula de um AUTO CDC ... FROM SNAPSHOT fluxo.
Sintaxe
current_snapshot_version()
Argumentos
Essa função não utiliza argumentos.
Returns
Uma relação de coluna única com o mesmo nome e tipo de coluna da consulta de versão do fluxo anexo, contendo exatamente 1 linha. A linha contém a versão selecionada para a iteração atual de processamento de snapshots.
current_snapshot_version() é avaliada somente após a consulta de versão retornar 1 linha. Se a consulta de versão devolver 0 linhas, o motor não executa a consulta snapshot e encerra o processamento do fluxo durante essa atualização do pipeline.
Examples
O fluxo seguinte é usado current_snapshot_version() para ler o arquivo selecionado pela WITH VERSION (...) cláusula. A versão é uma única STRUCT coluna, então seus campos são acessados com notação pontual:
CREATE FLOW orders_cdc
AS AUTO CDC INTO orders
FROM SNAPSHOT (
SELECT *
FROM read_files('/Volumes/catalog/schema/landing/orders/', format => 'json')
WHERE _metadata.file_path = (SELECT version.path FROM current_snapshot_version())
)
WITH VERSION (...)
KEYS (order_id);
Erros
current_snapshot_version() está disponível apenas dentro da FROM SNAPSHOT (...) cláusula de um AUTO CDC ... FROM SNAPSHOT fluxo que declara uma WITH VERSION (...) cláusula. Em qualquer outro lugar, o Spark resolve o nome como uma função comum de valor de tabela. Como tal função não está definida, ela aumenta UNRESOLVABLE_TABLE_VALUED_FUNCTION (SQLSTATE 42883).