Funzioni di espressione nel flusso di dati di mapping

SI APPLICA A: Azure Data Factory Azure Synapse Analytics

Suggerimento

Provare Data Factory in Microsoft Fabric, una soluzione di analisi completa per le aziende. Microsoft Fabric copre tutti gli elementi, dallo spostamento dei dati all'analisi scientifica dei dati, all'analisi in tempo reale, alla business intelligence e alla creazione di report. Scopri come avviare gratuitamente una nuova versione di valutazione .

I flussi di dati sono disponibili sia in Azure Data Factory che in Azure Synapse Pipelines. Questo articolo si applica ai flussi di dati di mapping. Se non si ha esperienza con le trasformazioni, vedere l'articolo introduttivo Trasformare i dati usando un flusso di dati di mapping.

Gli articoli seguenti forniscono informazioni dettagliate sulle funzioni di espressione supportate da Azure Data Factory e Azure Synapse Analytics nei flussi di dati di mapping.

Elenco di funzioni di espressione

Nelle pipeline di Data Factory e Synapse usare il linguaggio delle espressioni della funzionalità flusso di dati di mapping per configurare le trasformazioni dei dati.

Funzione expression Attività
abs Valore assoluto di un numero.
acos Calcola un valore inverso coseno.
add Aggiunge una coppia di stringhe o numeri. Aggiunge una data a un numero di giorni. Aggiunge una durata a un timestamp. Aggiunge una matrice di tipo simile a un'altra. Uguale all'operatore + .
e Operatore AND logico. Uguale a &&.
asin Calcola un valore seno inverso.
assertErrorMessages Restituisce la mappa di tutti i messaggi assert.
atan Calcola un valore tangente inverso.
atan2 Restituisce l'angolo in radianti tra l'asse x positivo di un piano e il punto specificato dalle coordinate.
Tra Controlla se il primo valore è compreso tra due altri valori in modo inclusivo. È possibile confrontare valori numerici, stringa e datetime
bitwiseAnd Operatore And bit per bit tra i tipi integrali. Uguale all'operatore & .
bitwiseOr Operatore Or bit per bit tra tipi integrali. Uguale a | Operatore.
bitwiseXor Operatore Or bit per bit tra tipi integrali. Uguale a | Operatore.
blake2b Calcola il digest Blake2 del set di colonne di tipi di dati primitivi variabili in base a una lunghezza di bit. La lunghezza del bit può essere costituita solo da più di 8 tra 8 e 512. Può essere usato per calcolare un'impronta digitale per una riga.
blake2bBinary Calcola il digest Blake2 del set di colonne di tipi di dati primitivi variabili in base a una lunghezza di bit, che può essere costituito solo da multipli di 8 tra 8 e 512. Può essere usato per calcolare un'impronta digitale per una riga
case In base alle condizioni alternative, applica un valore o l'altro. Se il numero di input è pari, l'altro valore predefinito è NULL per l'ultima condizione.
cbrt Calcola la radice del cubo di un numero.
ceil Restituisce il numero intero più piccolo non inferiore al numero.
coalesce Restituisce il primo valore diverso da NULL da un set di input. Tutti gli input devono essere dello stesso tipo.
columnNames Ottiene i nomi di tutte le colonne di output per un flusso. È possibile passare un nome di flusso facoltativo come primo argomento e un secondo argomento facoltativo per restituire solo colonne di deriva dello schema.
columns Ottiene i valori di tutte le colonne di output per un flusso. È possibile passare un nome di flusso facoltativo come secondo argomento.
compare Confronta due valori dello stesso tipo. Restituisce un numero intero negativo se value1 < value2, 0 se value1 == value2, valore positivo se value1 > value2.
concat Concatena un numero variabile di stringhe. Uguale all'operatore + con stringhe.
concatWS Concatena un numero variabile di stringhe con un separatore. Il primo parametro è il separatore.
cos Calcola un valore coseno.
cosh Calcola un coseno iperbolico di un valore.
crc32 Calcola l'hash CRC32 del set di colonne di tipi di dati primitivi variabili in base a una lunghezza di bit. La lunghezza del bit deve essere di valori 0 (256), 224, 256, 384 o 512. Può essere usato per calcolare un'impronta digitale per una riga.
Gradi Converte i radianti in gradi.
Dividere Divide coppie di numeri. Uguale all'operatore / .
dropLeft Rimuove il numero di caratteri a sinistra della stringa. Se l'eliminazione richiesta supera la lunghezza della stringa, viene restituita una stringa vuota.
dropRight Rimuove il numero di caratteri a destra della stringa. Se l'eliminazione richiesta supera la lunghezza della stringa, viene restituita una stringa vuota.
endsWith Controlla se la stringa termina con la stringa specificata.
equals Operatore equals di confronto. Uguale all'operatore == .
equalsIgnoreCase Operatore equals di confronto, ignorando la distinzione tra maiuscole e minuscole. Uguale all'operatore <=> .
escape Esegue l'escape di una stringa in base a un formato. I valori letterali per il formato accettabile sono 'json', 'xml', 'ecmascript', 'html', 'java'.
expr Restituisce un'espressione da una stringa. Equivale a scrivere l'espressione in un formato non letterale e può essere usata per passare i parametri come rappresentazioni di stringa.
Fattoriale Calcola il fattoriale di un numero.
false Restituisce sempre un valore false. Usare la funzione syntax(false()) se è presente una colonna denominata 'false'.
floor Restituisce il numero intero più grande non maggiore del numero.
fromBase64 Decodifica la stringa con codifica base64 specificata.
greater Operatore greater di confronto. Uguale all'operatore > .
greaterOrEqual Operatore greater than o equal di confronto. Uguale all'operatore >= .
Maggiore Restituisce il valore più grande dell'elenco di valori come input ignorando i valori NULL. Restituisce null se tutti gli input sono Null.
hasColumn Verifica la presenza di un valore di colonna nel flusso in base al nome. È possibile passare un nome di flusso facoltativo come secondo argomento. I nomi di colonna noti in fase di progettazione devono essere riportati solo in base al relativo nome. Gli input calcolati non sono supportati, ma è possibile usare le sostituzioni dei parametri.
hasError Controlla se l'asserzione con ID specificato è contrassegnata come errore.
Iif In base alla condizione specifica, applica un valore o l'altro. Se l'altro non è specificato, viene considerato NULL. Entrambi i valori devono essere compatibili (numeric, string...).
iifNull Dato due o più input, restituisce il primo elemento non Null. Questa funzione equivale a coalesce.
initCap Converte la prima lettera di ogni parola in lettere maiuscole. Le parole vengono identificate come separate da spazi vuoti.
Instr Trova la posizione (in base 1) della sottostringa all'interno di una stringa. Se non viene trovato, viene restituito 0.
isDelete Controlla se la riga è contrassegnata per l'eliminazione. Per le trasformazioni che accettano più di un flusso di input è possibile fornire l'indice del flusso (in base 1). L'indice del flusso deve essere 1 o 2 e il valore predefinito è 1.
Iserror Controlla se la riga è contrassegnata come errore. Per le trasformazioni che accettano più di un flusso di input è possibile fornire l'indice del flusso (in base 1). L'indice del flusso deve essere 1 o 2 e il valore predefinito è 1.
isIgnore Controlla se la riga è contrassegnata per essere ignorata. Per le trasformazioni che accettano più di un flusso di input è possibile fornire l'indice del flusso (in base 1). L'indice del flusso deve essere 1 o 2 e il valore predefinito è 1.
isInsert Controlla se la riga è contrassegnata per l'inserimento. Per le trasformazioni che accettano più di un flusso di input è possibile fornire l'indice del flusso (in base 1). L'indice del flusso deve essere 1 o 2 e il valore predefinito è 1.
isMatch Controlla se per la riga viene trovata una corrispondenza. Per le trasformazioni che accettano più di un flusso di input è possibile fornire l'indice del flusso (in base 1). L'indice del flusso deve essere 1 o 2 e il valore predefinito è 1.
Isnull Controlla se il valore è NULL.
isUpdate Controlla se la riga è contrassegnata per l'aggiornamento. Per le trasformazioni che accettano più di un flusso di input è possibile fornire l'indice del flusso (in base 1). L'indice del flusso deve essere 1 o 2 e il valore predefinito è 1.
isUpsert Controlla se la riga è contrassegnata per l'inserimento. Per le trasformazioni che accettano più di un flusso di input è possibile fornire l'indice del flusso (in base 1). L'indice del flusso deve essere 1 o 2 e il valore predefinito è 1.
jaroWinkler Ottiene la distanza jaroWinkler tra due stringhe.
Meno Operatore lesser than o equal di confronto. Uguale all'operatore <= .
left Estrae una sottostringa iniziale in corrispondenza dell'indice 1 con il numero di caratteri specificato. Uguale a SUBSTRING(str, 1, n).
length Restituisce la lunghezza della stringa.
Minore Operatore less di confronto. Uguale all'operatore < .
minorOrEqual Operatore lesser than o equal di confronto. Uguale all'operatore <= .
levenshtein Ottiene la distanza levenshtein tra due stringhe.
Come Il modello è una stringa con corrispondenza letterale. Le eccezioni sono i seguenti simboli speciali: _ corrisponde a qualsiasi carattere nell'input (simile a. nelle posix espressioni regolari)
Individuare Trova la posizione (in base 1) della sottostringa all'interno di una stringa a partire da una determinata posizione. Se la posizione viene omessa, viene considerata dall'inizio della stringa. Se non viene trovato, viene restituito 0.
log Calcola il valore del logaritmo. È possibile specificare una base facoltativa; in caso contrario, è possibile specificare un numero eulero.
log10 Calcola il valore del log in base a 10 base.
Inferiore Lettere minuscole di una stringa.
lpad Riempie a sinistra la stringa in base al riempimento specificato fino a raggiungere una determinata lunghezza. Se la stringa è uguale o maggiore della lunghezza, viene tagliata fino alla lunghezza.
Ltrim Rimuove i caratteri iniziali dal lato sinistro di una stringa. Se il secondo parametro non è specificato, rimuove lo spazio vuoto. Altrimenti taglia qualsiasi carattere specificato nel secondo parametro.
md5 Calcola il digest MD5 del set di colonne di tipi di dati primitivi variabili e restituisce una stringa esadecimale di 32 caratteri. Può essere usato per calcolare un'impronta digitale per una riga.
minus Sottrae numeri. Sottrarre il numero di giorni da una data. Sottrarre la durata da un timestamp. Sottrarre due timestamp per ottenere la differenza in millisecondi. Uguale all'operatore - .
mod Calcola il modulo di coppie di numeri. Uguale all'operatore %.
Moltiplicare Moltiplica coppie di numeri. Uguale all'operatore * .
negate Nega un numero. Trasforma numeri positivi in negativi e viceversa.
nextSequence Restituisce la sequenza univoca successiva. Il numero è consecutivo solo all'interno di una partizione ed è preceduto dal partitionId.
Normalizzare Normalizza il valore stringa in modo da separare i caratteri Unicode accentati.
not Operatore di negazione logico.
notEquals Operatore not equals di confronto. Uguale all'operatore != .
Null Restituisce un valore NULL. Usare la funzione syntax(null()) se è presente una colonna denominata 'null'. Qualsiasi operazione utilizzata comporterà un valore NULL.
oppure Operatore OR logico. Uguale a ||.
pMod Calcola il modulo positivo di coppie di numeri.
Partitionid Restituisce l'ID della partizione corrente in cui si trova la riga di input.
power Alza un numero alla potenza di un altro.
Radianti Converte i gradi in radianti
random Restituisce un numero casuale dato un valore di inizializzazione facoltativo all'interno di una partizione. Il valore di inizializzazione deve essere un valore fisso e viene usato con partitionId per produrre valori casuali
regexExtract Estrae una sottostringa corrispondente per un modello di espressione regolare specificato. L'ultimo parametro identifica il gruppo di corrispondenza e, se omesso, viene usato il valore predefinito 1. Usare `<regex>` (virgolette indietro) per trovare una corrispondenza con una stringa senza escape.
regexMatch Verifica se la stringa corrisponde al modello di espressione regolare specificato. Usare `<regex>` (virgolette indietro) per trovare una corrispondenza con una stringa senza escape.
regexReplace Sostituire tutte le occorrenze di un criterio regex con un'altra sottostringa nella stringa specificata Usare `<regex>` (virgolette indietro) per trovare una corrispondenza con una stringa senza escape.
regexSplit Divide una stringa in base a un delimitatore in base all'espressione regolare e restituisce una matrice di stringhe.
replace Sostituisce tutte le occorrenze di una sottostringa con un'altra sottostringa nella stringa specificata. Se l'ultimo parametro viene omesso, per impostazione predefinita è una stringa vuota.
ordinamento inverso Inverte una stringa.
right Estrae una sottostringa finale con il numero di caratteri specificato. Uguale a SUBSTRING(str, LENGTH(str) - n, n).
rlike Verifica se la stringa corrisponde al modello di espressione regolare specificato.
round Arrotonda un numero in base a una scala e a una modalità di arrotondamento facoltative. Se la scala viene omessa, il valore predefinito è 0. Se la modalità viene omessa, per impostazione predefinita viene ROUND_HALF_UP(5). I valori per l'arrotondamento includono
rpad Riempie a destra la stringa in base al riempimento specificato fino a raggiungere una determinata lunghezza. Se la stringa è uguale o maggiore della lunghezza, viene tagliata fino alla lunghezza.
rtrim Destra taglia una stringa di caratteri finali. Se il secondo parametro non è specificato, rimuove lo spazio vuoto. Altrimenti taglia qualsiasi carattere specificato nel secondo parametro.
sha1 Calcola il digest SHA-1 di un set di colonne di diversi tipi di dati primitivi e restituisce una stringa esadecimale a 40 caratteri. Può essere usato per calcolare un'impronta digitale per una riga.
sha2 Calcola il digest SHA-2 di un set di colonne di diversi tipi di dati primitivi, data una lunghezza in bit che può avere solo i valori 0(256), 224, 256, 384 e 512. Può essere usato per calcolare un'impronta digitale per una riga.
sin Calcola un valore seno.
sinh Calcola un valore seno iperbolico.
soundex Ottiene il soundex codice per la stringa.
split Divide una stringa in base a un delimitatore e restituisce una matrice di stringhe.
sqrt Calcola la radice quadrata di un numero.
startsWith Controlla se la stringa inizia con la stringa specificata.
substring Estrae una sottostringa di una determinata lunghezza da una posizione. La posizione è in base 1. Se la lunghezza viene omessa, l'impostazione predefinita è la fine della stringa.
substringIndex Estrae la sottostringa prima count delle occorrenze del delimitatore. Se count è positivo, viene restituito tutto a sinistra del delimitatore finale (conteggio dalla sinistra). Se count è negativo, viene restituito tutto a destra del delimitatore finale (conteggio dalla destra).
tan Calcola un valore tangente.
tanh Calcola un valore tangente iperbolico.
Traduci Sostituisce un set di caratteri con un altro set di caratteri nella stringa. I caratteri hanno una sostituzione da 1 a 1.
Trim Rimuove i caratteri iniziali e finali di una stringa. Se il secondo parametro non è specificato, rimuove lo spazio vuoto. Altrimenti taglia qualsiasi carattere specificato nel secondo parametro.
vero Restituisce sempre un valore true. Usare la funzione syntax(true()) se è presente una colonna denominata 'true'.
typeMatch Trova corrispondenze tra tipi di colonne. Può essere usato solo nelle espressioni pattern.number corrisponde a short, integer, long, double, float o decimal, integral match short, integer, long, fractional match double, float, decimal e datetime corrisponde al tipo date o timestamp.
unescape Annulla l'escape di una stringa in base a un formato. I valori letterali per il formato accettabile sono 'json', 'xml', 'ecmascript', 'html', 'java'.
Superiore Maiuscole di una stringa.
uuid Restituisce l'UUID generato.
xor Operatore XOR logico. Uguale all'operatore ^ .