Lo strumento di modifica delle query ti consente di utilizzare funzioni avanzate per eseguire filtri complessi. A tal fine, la palette strumenti contiene l’elemento Expression che puoi utilizzare nell’area di lavoro. Ulteriori informazioni su questo elemento sono descritte in una sezione specifica.
Questo elemento ti consente di inserire manualmente le condizioni. Qui puoi utilizzare le funzioni definite nelle sezioni seguenti.
Sono disponibili diversi tipi di funzioni, a seconda dei risultati desiderati e dei tipi di dati manipolati:
Sono disponibili funzioni aggiuntive in tutte le attività che consentono di utilizzare variabili di eventi dopo la chiamata di un flusso di lavoro con parametri esterni. Sono descritte in dettaglio questa sezione.
Le funzioni di data vengono utilizzate per manipolare i valori di data o ora.
Nome |
Descrizione |
Sintassi |
AddDays |
Aggiunge un numero di giorni a una data |
AddDays(<data>, <numero>) |
AddHours |
Aggiunge un numero di ore a una data |
AddHours(<data>, <numero>) |
AddMinutes |
Aggiunge un numero di minuti a una data |
AddMinutes(<data>, <numero>) |
AddMonths |
Aggiunge un numero di mesi a una data |
AddMonths(<data>, <numero>) |
AddSeconds |
Aggiunge un numero di secondi a una data |
AddSeconds(<data>, <numero>) |
AddYears |
Aggiunge un numero di anni a una data |
AddYears(<data>, <numero>) |
DateOnly |
Restituisce solo la data (con l’ora su 00.00) |
DateOnly(<data>) |
Day |
Restituisce il numero che rappresenta il giorno della data |
Day(<data>) |
DayOfYear |
Restituisce un numero che rappresenta il giorno dell’anno della data |
DayOfYear(<data>) |
DaysAgo |
Restituisce la data corrente meno n giorni |
DaysAgo(<numero>) |
DaysAgoInt |
Restituisce la data corrente meno n giorni (come numero intero aaaammgg). |
DaysAgoInt(<numero>) |
DaysDiff |
Numero di giorni tra due date |
DaysDiff(<data di fine>, <data di inizio>) |
DaysOld |
Restituisce l’età in giorni di una data |
DaysOld(<data>) |
GetDate |
Restituisce la data di sistema corrente del server |
GetDate() |
Hour |
Restituisce l’ora della data |
Hour(<data>) |
HoursDiff |
Restituisce il numero di ore tra due date |
HoursDiff(<data di fine>, <data di inizio>) |
LocalToUTC |
Converte una data e un’ora locali in UTC |
LocalToUTC(<data>, <fuso orario>) |
Minute |
Restituisce i minuti della data |
Minute(<data>) |
MinutesDiff |
Restituisce il numero di minuti tra due date |
MinutesDiff(<data di fine>, <data di inizio>) |
Month |
Restituisce il numero che rappresenta il mese della data |
Month(<data>) |
MonthsAgo |
Restituisce la data corrispondente alla data corrente meno n mesi |
MonthsAgo(<numero>) |
MonthsDiff |
Restituisce il numero di mesi tra due date |
MonthsDiff(<data di fine>, <data di inizio>) |
MonthsOld |
Restituisce l’età in mesi di una data |
MonthsOld(<data>) |
Second |
Restituisce i secondi della data |
Second(<data>) |
Oldest |
Restituisce la data meno recente | Oldest(<Data>, <Data>) |
SecondsDiff |
Restituisce il numero di secondi tra due date |
SecondsDiff(<data di fine>, <data di inizio>) |
SubDays |
Sottrae un numero di giorni da una data |
SubDays(<data>, <numero>) |
SubHours |
Sottrae un numero di ore da una data |
SubHours(<data>, <numero>) |
SubMinutes |
Sottrae un numero di minuti da una data |
SubMinutes(<data>, <numero>) |
SubMonths |
Sottrae un numero di mesi da una data |
SubMonths(<data>, <numero>) |
SubSeconds |
Sottrae un numero di secondi da una data |
SubSeconds(<data>, <numero>) |
SubYears |
Sottrae un numero di anni da una data |
SubYears(<data>, <numero>) |
ToDate |
Converte una data + ora in una data |
ToDate(<data + ora>) |
ToDateTime |
Converte una stringa in una data + ora |
ToDateTime(<stringa>) |
ToDateTimeWithTimezone |
Converte una stringa in una data + fuso orario. Esempio: ToDateTimeWithTimezone ("2019-02-19 08:09:00", "Asia/Teheran") |
ToDateTimeWithTimezone(<stringa>) |
TruncDate |
Arrotonda una data+ora al secondo più vicino |
TruncDate(@lastModified, <numero di secondi>) |
TruncDateTZ |
Arrotonda una data + ora a una determinata precisione, espressa in secondi |
TruncDateTZ(<data>, <numero di secondi>, <fuso orario>) |
TruncQuarter |
Arrotonda una data al trimestre |
TruncQuarter(<data>) |
TruncTime |
Arrotonda la parte dell’ora al secondo più vicino |
TruncTime(<data>, <numero di secondi>) |
TruncWeek |
Arrotonda una data alla settimana |
TruncWeek(<data>) |
TruncYear |
Arrotonda una data + ora al 1° gennaio dell’anno |
TruncYear(<data>) |
WeekDay |
Restituisce il numero che rappresenta il giorno della settimana della data |
WeekDay(<data>) |
Year |
Restituisce il numero che rappresenta l’anno della data |
Year(<data>) |
YearAnd Month |
Restituisce il numero che rappresenta l’anno e il mese della data |
YearAndMonth(<data>) |
YearsDiff |
Restituisce il numero di anni tra le due date |
YearsDiff(<data di fine>, <data di inizio>) |
YearsOld |
Restituisce l’età in anni di una data |
YearsOld(<data>) |
Le funzioni di geomarketing vengono utilizzate per manipolare i valori geografici.
Nome |
Descrizione |
Sintassi |
Distance |
Restituisce la distanza in chilometri tra due punti definiti da longitudine e latitudine (espressa in gradi). |
Distance(<Longitudine A>, <Latitudine A>, <Longitudine B>, <Latitudine B>) |
Le funzioni relative al valore numerico vengono utilizzate per convertire il testo in numeri.
Nome |
Descrizione |
Sintassi |
Abs |
Restituisce il valore assoluto di un numero |
Abs(<numero>) |
Ceil |
Restituisce il numero intero più piccolo maggiore o uguale a un numero |
Ceil(<numero>) |
Floor |
Restituisce il numero intero più grande minore o uguale a un numero |
Floor(<numero>) |
Greatest |
Restituisce il numero maggiore tra due numeri |
Greatest(<numero 1>, <numero 2>) |
Least |
Restituisce il minore tra due numeri |
Least(<numero 1>, <numero 2>) |
Mod |
Restituisce il resto della divisione del numero intero da n1 per n2 |
Mod(<numero 1>, <numero 2>) |
Percent |
Restituisce il rapporto tra due numeri espresso come percentuale |
Percent(<numero 1>, <numero 2>) |
Random |
Restituisce il valore casuale |
Random() |
Round |
Arrotonda un numero a n decimali |
Round(<numero>, <numero di decimali>) |
Sign |
Restituisce il segno del numero |
Sign(<numero>) |
ToDouble |
Converte un numero intero in un numero in virgola mobile |
ToDouble(<numero>) |
ToInt64 |
Converte un numero in virgola mobile in un numero intero a 64 bit |
ToInt64(<numero>) |
ToInteger |
Converte un numero in virgola mobile in un numero intero |
ToInteger(<numero>) |
Trunc |
Tronca n1 a n2 decimali |
Trunc(<n1>, <n2>) |
Questa tabella contiene le altre funzioni disponibili.
Nome |
Descrizione |
Sintassi |
Case |
Restituisce il valore 1 se la condizione è verificata. In caso contrario, restituisce il valore 2 |
Case(When(<condizione>, <valore 1>), Else(<valore 2>)) |
ClearBit |
Elimina il contrassegno nel valore |
ClearBit(<identificatore>, <contrassegno>) |
Coalesce |
Restituisce il valore 2 se il valore 1 è zero o nullo, altrimenti restituisce il valore 1 |
Coalesce(<valore 1>, <valore 2>) |
Decode |
Restituisce il valore 3 se valore 1 = valore 2, altrimenti restituisce 4 |
Decode(<valore 1>, <valore 2>, <valore 3>, <valore 4>) |
Else |
Restituisce il valore 1 (può essere utilizzato solo come parametro della funzione Case) |
Else(<valore 1>) |
GetEmailDomain |
Estrae il dominio da un indirizzo e-mail |
GetEmailDomain(<valore>) |
GetMirrorURL |
Recupera l’URL del server della pagina speculare |
GetMirrorURL(<valore>) |
Iif |
Restituisce il valore 1 se l’espressione è true, altrimenti restituisce il valore 2 |
Iif(<condizione>, <valore 1>, <valore 2>) |
IsBitSet |
Indica se il contrassegno si trova nel valore |
IsBitSet(<identificatore>, <contrassegno>) |
IsEmptyString |
Restituisce il valore 2 se la stringa è vuota, altrimenti restituisce il valore 3 |
IsEmptyString(<stringa>, <valore 2>, <valore 3>) |
NoNull |
Restituisce la stringa vuota se l’argomento è NULL |
NoNull(<valore>) |
RowId |
Restituisce il numero di riga |
RowId |
SetBit |
Forza il contrassegno nel valore |
SetBit(<identificatore>, <contrassegno>) |
ToBoolean |
Converte un numero in booleano |
ToBoolean(<numero>) |
When |
Restituisce il valore 1 se l’espressione è verificata. In caso contrario, restituisce il valore 2 (può essere utilizzato solo come parametro della funzione Case) |
When(<condizione>, <valore 1>) |
newUUID |
Restituisce un nuovo UUID. |
newUUID |
Le funzioni di stringa vengono utilizzate per manipolare un insieme di stringhe.
Nome |
Descrizione |
Sintassi |
AllNonNull2 |
Indica se tutti i parametri non sono nulli e non sono vuoti |
AllNonNull2(<stringa>, <stringa>) |
AllNonNull3 |
Indica se tutti i parametri non sono nulli e non sono vuoti |
AllNonNull3(<stringa>, <stringa>, <stringa>) |
ASCII |
Restituisce il valore ASCII del primo carattere della stringa |
Ascii(<stringa>) |
Char |
Restituisce il carattere corrispondente al codice ASCII “n” |
Char(<numero>) |
Charindex |
Restituisce la posizione della stringa 2 nella stringa 1 |
Charindex(<stringa>, <stringa>) |
DataLength |
Restituisce il numero di caratteri in una stringa |
DataLength(<Stringa>) |
GetLine |
Restituisce l’ennesima riga (da 1 a n) della stringa |
GetLine(<stringa>) |
IfEquals |
Restituisce il terzo parametro se i primi due parametri sono uguali, altrimenti restituisce l’ultimo parametro |
IfEquals(<stringa>, <stringa>, <stringa>, <stringa>) |
IsMemoNull |
Indica se il promemoria passato come parametro è nullo |
IsMemoNull(<promemoria>) |
JuxtWords |
Concatena le due stringhe passate come parametri. Uno spazio viene aggiunto tra ciascuna stringa del valore restituito. |
JuxtWords(<stringa>, <stringa>) |
JuxtWords3 |
Concatena le tre stringhe passate come parametri. Uno spazio viene aggiunto tra ciascuna stringa del valore restituito. |
JuxtWords3(<stringa>, <stringa>, <stringa>) |
LPad |
Restituisce la stringa completata a sinistra |
LPad(<stringa>, <numero>, <carattere>) |
Left |
Restituisce i primi n caratteri della stringa |
Left(<stringa>, <numero>) |
Length |
Restituisce la lunghezza della stringa |
Length(<stringa>) |
Lower |
Restituisce la stringa in caratteri minuscoli |
Lower(<stringa>) |
Ltrim |
Rimuove gli spazi a sinistra della stringa |
Ltrim(<stringa>) |
Md5Digest |
Restituisce una rappresentazione esadecimale della chiave MD5 di una stringa |
Md5Digest(<stringa>) |
MemoContains |
Specifica se il promemoria contiene la stringa passata come parametro |
MemoContains(<promemoria>, <stringa>) |
RPad |
Restituisce la stringa completata a destra |
RPad(<stringa>, <numero>, <carattere>) |
Replace |
Sostituisce tutte le occorrenze di un valore di stringa specificato (secondo parametro) con un altro valore di stringa (terzo parametro) in una stringa (primo parametro). |
Replace(<Stringa>, <Stringa>, <Stringa>) |
Right |
Restituisce gli ultimi n caratteri della stringa |
Right(<stringa>) |
Rtrim |
Rimuove gli spazi a destra della stringa |
Rtrim(<stringa>) |
Sha256Digest |
Calcola l’hash standard SHA256 per una stringa UTF8 specificata |
Sha256Digest(<Stringa>) |
Sha384Digest |
Calcola l’hash standard SHA384 per una stringa UTF8 specificata |
Sha384Digest(<Stringa>) |
Sha512Digest |
Calcola l’hash standard SHA512 per una stringa UTF8 specificata |
Sha512Digest(<Stringa>) |
Smart |
Restituisce la stringa con la prima lettera di ciascuna parola in maiuscolo |
Smart(<stringa>) |
Substring |
Estrae la stringa secondaria a partire dal carattere n1 della stringa e con una lunghezza n2 |
Substring(<stringa>, <offset>, <lunghezza>) |
ToIntlString |
Converte il numero in una stringa |
ToIntlString(<numero>) |
ToString |
Converte il numero in una stringa |
ToString(<numero>) |
Upper |
Restituisce la stringa in caratteri maiuscoli |
Upper(<stringa>) |
VirtualLink |
Restituisce la chiave esterna di un collegamento passato come parametro se gli altri due parametri sono uguali |
VirtualLink(<numero>, <numero>, <numero>) |
VirtualLinkStr |
Restituisce la chiave esterna (testo) di un collegamento passato come parametro se gli altri due parametri sono uguali |
VirtualLinkStr(<stringa>, <numero>, <numero>) |
encryption_aescbcDecrypt |
Decritta un valore crittografato in formato HEX con il prefisso "x" (primo parametro) utilizzando una chiave in formato HEX (secondo parametro) e un vettore di inizializzazione in formato HEX (terzo parametro) |
encryption_aescbcDecrypt(<Stringa>, <Stringa>, <Stringa>) |
encryption_aescbcEncrypt |
Effettua la cifratura di una stringa di caratteri (primo parametro) utilizzando l’algoritmo AES (modalità blocco CBC) con una chiave (secondo parametro) e un vettore di inizializzazione (terzo parametro). La chiave e il vettore di inizializzazione devono essere forniti in una rappresentazione esadecimale (a partire da \x). Il risultato sarà esadecimale senza \x. Tieni presente che le dimensioni della chiave possono essere 128 bit, 192 bit, 256 bit (16, 24, 32 caratteri esadecimali), ma si consiglia di utilizzare 256 bit e un IV randomizzato della stessa lunghezza della chiave. |
encryption_aescbcEncrypt(<string>, <string>, <string>) Ad esempio: encryption_aescbcEncrypt(johndoe@example.com, "\\x0123456789ABCDEF0123456789ABCDEF", "\\x0123456789ABCDEFFEDCBA9876543210") |
Le funzioni di aggregazione sono disponibili solo quando si aggiungono dati aggiuntivi dall’attività Query di un flusso di lavoro.
Le funzioni di aggregazione vengono utilizzate per eseguire calcoli su un insieme di valori.
Nome |
Descrizione |
Sintassi |
Avg, Average |
Restituisce la media in una colonna numerica. |
Avg(<valore>) |
Count, Count (tranne NULL) |
Conta i valori non nulli in una colonna. |
Count(<valore>) |
CountAll, Count all |
Conta tutti i valori (inclusi i valori nulli e duplicati). |
CountAll() |
Countdistinct, Distinct count |
Conta i valori distinti non nulli in una colonna. |
Countdistinct(<valore>) |
Max, Max |
Restituisce il valore massimo in una colonna numerica, stringa o data. |
Max(<valore>) |
Min, Min |
Restituisce il valore minimo in una colonna numerica, stringa o data. |
Min(<valore>) |
StringaAgg, Valore aggregato stringa |
Restituisce la concatenazione dei valori di una colonna di tipo stringa, separati dal carattere nel secondo argomento (il separatore predefinito è la virgola). |
StringAgg(<string values="">,<separator>) |
Sum, Sum |
Restituisce la somma dei valori in una colonna numerica. |
Sum(<valore>) |
Le funzioni di rappresentazione vengono utilizzate per ordinare valori.
Nome |
Descrizione |
Sintassi |
Desc |
Applica un ordinamento decrescente |
Desc(<valore 1>) |
OrderBy |
Ordina il risultato all’interno della partizione |
OrderBy(<valore 1>) |
PartitionBy |
Partiziona il risultato di una query su una tabella |
PartitionBy(<valore 1>) |
RowNum |
Genera un numero di riga basato sulla partizione della tabella e su una sequenza di ordinamento. Questa funzione non è supportata per MySQL |
RowNum(PartitionBy(<valore 1>), OrderBy(<valore 1>)) |