Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Funzione
Restituisce la riga di versione selezionata dalla clausola del WITH VERSION (...) flusso di contenimento per lo snapshot in processione.
Questa funzione è disponibile solo all'interno della FROM SNAPSHOT (...) clausola di un AUTO CDC ... FROM SNAPSHOT flow.
Syntax
current_snapshot_version()
Argomenti
Questa funzione non accetta argomenti.
Returns
Una relazione a colonna singola con lo stesso nome e tipo della query di versione del flusso che lo allega, contenente esattamente 1 riga. La riga contiene la versione selezionata per l'iterazione attuale di elaborazione degli snapshot.
current_snapshot_version() viene valutata solo dopo che la query versione restituisce 1 riga. Se la query versione restituisce 0 righe, il motore non esegue la query snapshot e termina l'elaborazione del flusso durante quell'aggiornamento della pipeline.
Esempi
Il flusso successivo viene utilizzato current_snapshot_version() per leggere il file selezionato dalla WITH VERSION (...) clausola. La versione è una singola STRUCT colonna, quindi i suoi campi sono accessibili con la notazione a punti:
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);
Errors
current_snapshot_version() è disponibile solo all'interno della FROM SNAPSHOT (...) clausola di un AUTO CDC ... FROM SNAPSHOT flusso che dichiara una WITH VERSION (...) clausola. Ovunque altrove, Spark risolve il nome come una funzione ordinaria a valori di tabella. Poiché nessuna funzione del genere è definita, essa aumenta UNRESOLVABLE_TABLE_VALUED_FUNCTION (SQLSTATE 42883).