Modifica espressioni expression

La modifica di un’espressione comporta l’immissione manuale di condizioni per formare una regola. Questa modalità ti consente di utilizzare funzioni avanzate, che ti consentono di manipolare i valori utilizzati per eseguire query specifiche come la manipolazione di date, stringhe, campi numerici, ordinamenti, ecc.

IMPORTANT
La sezione seguente fornisce informazioni su come utilizzare l’editor di espressioni per creare regole. Tieni presente che la sintassi utilizzata per creare le regole è diversa da quella utilizzata per aggiungere la personalizzazione.

Utilizzare l’editor di espressioni edit

L'editor espressioni è disponibile dal pulsante Modifica espressione del modellatore di query, disponibile per i campi Attributo e Valore durante la configurazione di una condizione personalizzata.

Accesso dal campo Attributo
Accedi dal campo Valore
{modal="regular"}
{modal="regular"}

L’editor di espressioni mostra:

  • Un campo di input (1) in cui è definita l'espressione.
  • Elenco di campi (2) disponibili che possono essere utilizzati nell'espressione e corrispondenti alla dimensione di targeting della query.
  • Funzioni helper (3), ordinate per categoria.

Modifica l’espressione immettendo un’espressione direttamente nel campo di input. Per aggiungere un campo o una funzione di supporto, posizionare il cursore nell'espressione nel punto in cui si desidera aggiungerla e fare clic sul pulsante +.

{modal="regular"}

Quando l'espressione è pronta, fare clic sul pulsante Conferma. L’espressione viene visualizzata nel campo selezionato. Per modificarlo, apri l’editor di espressioni e apporta le modifiche desiderate.

L'esempio seguente mostra un'espressione configurata per il campo Value. Per modificarlo, è necessario aprire l'editor espressioni utilizzando il pulsante Modifica espressione.

{modal="regular"}

Funzioni Helper

Lo strumento di modifica delle query ti consente di utilizzare funzioni avanzate per eseguire filtri complessi in base ai risultati desiderati e ai tipi di dati manipolati. Sono disponibili le seguenti funzioni:

Aggregato

Le funzioni di aggregazione vengono utilizzate per eseguire calcoli su un insieme di valori.

Nome
Descrizione
Sintassi
Avg
Restituisce la media di una colonna di tipo numerico
Avg(<valore>)
Conteggio
Conta i valori non nulli in una colonna
Count(<valore>)
CountAll
Conta i valori restituiti (tutti i campi)
CountAll()
Countdistinct
Conta i valori distinti non nulli in una colonna
Countdistinct(<valore>)
Max
Restituisce il valore massimo in una colonna numerica, stringa o data
Max(<valore>)
Min
Restituisce il valore minimo in una colonna numerica, stringa o data.
Min(<valore>)
StdDev
Restituisce la deviazione standard in una colonna numerica, stringa o data
StdDev(<valore>)
AggStringa
Restituisce la concatenazione dei valori di una colonna di tipo stringa, separati dal carattere nel secondo argomento
StringAgg(<Valore>, <Stringa>)
Somma
Restituisce la somma dei valori in una colonna numerica, stringa o data
Sum(<valore>)

Data

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>)
ConvertNTZ
Converte la marca temporale NTZ (marca temporale senza fuso orario) in TZ (marca temporale con fuso orario) applicando la sessione definita TZ
ConvertNTZ (<data+ora>)
CmpData
Confronta due date
DateCmp(<data>,<data>)
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 del giorno dell’anno della data
DayOfYear(<data>)
DaysAgo
Restituisce la data corrispondente alla data corrente meno n giorni
DaysAgo(<numero>)
DaysAgoInt
Restituisce la data corrispondente (numero intero aaaammgg) alla data corrente meno n giorni
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>)
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>)
Oldest
Restituisce la data meno recente in un intervallo
Oldest (<data, data>)
Second
Restituisce i secondi della data
Second(<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>)
ATimestamp
Converte una stringa in una marca temporale
ToTimestamp(<stringa>)
ToTimeZone
Convertire una data + ora in fuso orario
ToTimeZone(<data>,<fuso orario>)
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 un numero che rappresenta il giorno della settimana della data (0=lunedì, 6=domenica)
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>)
YearsAgo
Restituisce il numero di anni tra una data specificata e la data corrente
YearsAgo(<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>)
NOTE
Tieni presente che la funzione Dateonly tiene conto del fuso orario del server, non di quello dell’operatore.

Geomarketing

Le funzioni di geomarketing vengono utilizzate per manipolare i valori geografici.

Nome
Descrizione
Sintassi
Distance
Restituisce la distanza tra due punti definiti da longitudine e latitudine espressa in gradi.
Distance(<Longitudine A>, <Latitudine A>, <Longitudine B>, <Latitudine B>)

Numerico

Le funzioni numeriche 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 maggiore 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>)

Altri

Questa tabella contiene le altre funzioni disponibili.

Nome
Descrizione
Sintassi
AESEncrypt
Stringa di crittografia fornita nell'argomento
AESEncrypt(<valore>)
Case
Restituisce il valore 1 se la condizione è vera. 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 il valore 1 = al valore 2. In caso contrario, restituisce il valore 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>, <valore 2>)
GetEmailDomain
Estrae il dominio da un indirizzo e-mail
GetEmailDomain(<valore>)
GetMirrorURL
Recupera l’URL del server della pagina mirror
GetMirrorURL(<valore>)
Iif
Restituisce il valore 1 se l’espressione è vera. In caso contrario, 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(<valore 1>, <valore 2>, <valore 3>)
NuovoUUID
Restituisce un ID univoco
NewUUID()
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 è vera. In caso contrario, restituisce il valore 2 (può essere utilizzato solo come parametro della funzione Case)
When(<condizione>, <valore 1>)

Stringa

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 la dimensione in byte della 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. In caso contrario, restituisce l’ultimo parametro
IfEquals(<stringa>, <stringa>, <stringa>, <stringa>)
IsMemoNull
Indica se il promemoria passato come parametro è nullo
IsMemoNull(<promemoria>)
JuxtWords
Concatena le stringhe passate come parametri. Se necessario, aggiunge spazi tra le stringhe.
JuxtWords(<stringa>, <stringa>)
JuxtWords3
Concatena le stringhe passate come parametri. Se necessario, aggiunge spazi tra le stringhe
JuxtWords3(<stringa>, <stringa>, <stringa>)
Left
Restituisce i primi n caratteri della stringa
Left(<stringa>, <numero>)
Length
Restituisce la lunghezza della stringa
Length(<stringa>)
Riga
Estrai riga n dalla stringa
Line(<stringa>,<numero>)
Lower
Restituisce la stringa in caratteri minuscoli
Lower(<stringa>)
LPad
Restituisce la stringa completata a sinistra
LPad (<Stringa>, <Numero>, <Carattere>)
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>)
ValoreNodo
Estrae il valore di un campo XML dal relativo XPath e dai dati del campo
NodeValue (<Stringa>, <Stringa>)
Replace
Sostituisce tutte le occorrenze di un valore di stringa specificato con un altro valore di stringa.
Replace(<Stringa>,<Stringa>,<Stringa>)
Right
Restituisce gli ultimi n caratteri della stringa
Right(<stringa>)
RPad
Restituisce la stringa completata a destra
RPad(<stringa>, <numero>, <carattere>)
Rtrim
Rimuove gli spazi a destra della stringa
Rtrim(<stringa>)
Sha256Digest
Rappresentazione esadecimale della chiave SHA256 di una stringa.
Sha256Digest (<Stringa>)
Sha512Digest
Rappresentazione esadecimale della chiave SHA512 di una stringa.
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>)
ToString
Converte il numero in una stringa
ToString(<numero>, <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>)

Finestra

Nome
Descrizione
Sintassi
_Over__
Esegui la chiamata alla funzione SQL immessa come primo parametro, su Partition o Order By nei campi immessi come secondo parametro
_Over_ (<Valore>, <Valore>)
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.
RowNum(PartitionBy(<valore 1>), OrderBy(<valore 1>))
recommendation-more-help
c39c2d00-ba9a-424b-adf9-66af58a0c34b