Passa al contenuto principale
Workday User Guide
Ultimo aggiornamento: 2024-06-28
Riferimento rapido di Prism Expression

Riferimento rapido di Prism Expression

Funzioni di conversione

Funzione
Descrizione
Esempio
Crea un campo Valuta da a
NUMERIC
valore e a
TEXT
o
INSTANCE
contenente un codice valuta valido. Quando il codice valuta non è valido, questa funzione restituisce NULL.
BUILD_CURRENCY([Sale Price], [Currency Code])
Converte i valori dei dati da un tipo di campo (tipo di dati) a un altro.
CAST([Region] AS Instance(eecb565181284b6a8ae8b45dc3ed1451))
CAST(99.99 AS decimal(10,3))
resi
99.990
.
CAST(99.99 AS decimal(20,2))
resi
99.99
.
CAST(99.999 AS decimal(10,2))
resi
100.00
.
Converte
LONG
valori a
DATE
valori, dove il numero di input rappresenta il numero di millisecondi dall'epoca.
EPOCH_MS_TO_DATE(1360260240000) returns
2013-02-07T18:04:00:000Z
Accetta un valore Valuta ed estrae l'importo numerico come
NUMERIC
valore
EXTRACT_AMOUNT([Salary])
Accetta un
CURRENCY
valore ed estrae il codice valuta come
INSTANCE
valore
EXTRACT_CODE([Salary])
Accetta un
CURRENCY
valore ed estrae il codice valuta come a
TEXT
valore
EXTRACT_CODE_TEXT([Salary])
Converte
TEXT
,
BOOLEAN
,
INTEGER
,
LONG
, o
NUMERIC
valori a
BOOLEAN
.
TO_BOOLEAN([is_contingent])
Converte
TEXT
che contengono dati validi in formato valuta per
CURRENCY
valori
TO_CURRENCY("1234.56 USD")
TO_CURRENCY(CONCAT(TO_STRING([Grant Price]), [Grant Code]))
Converte
TEXT
valori a
DATE
valori e specifica il formato degli elementi di data e ora nella stringa.
TO_DATE([order_date],"yyyy.MM.dd 'at' HH:mm:ss z")
Converte
TEXT
,
BOOLEAN
,
INTEGER
,
LONG
,
DOUBLE
, o
NUMERIC
valori a
NUMERIC
valori con il numero predefinito di cifre prima e dopo la virgola decimale.
TO_DECIMAL([average_rating])
Converte
TEXT
,
BOOLEAN
,
INTEGER
,
LONG
, o
DOUBLE
valori a
DOUBLE
(un tipo di valori numerici).
TO_DOUBLE([average_rating])
Converte
TEXT
,
BOOLEAN
,
INTEGER
,
LONG
, o
DOUBLE
valori a
INTEGER
(numero intero). Durante la conversione
DOUBLE
valori, tutti i valori dopo il decimale verranno troncati (non arrotondati per eccesso o per difetto).
TO_INT([average_rating])
Converte
TEXT
,
BOOLEAN
,
INTEGER
,
LONG
,
DECIMAL
,
DATE
, o
DOUBLE
valori a
Long
(numero intero). Durante la conversione
Decimal
o
DOUBLE
valori, tutti i valori dopo il decimale verranno troncati (non arrotondati per eccesso o per difetto).
TO_LONG([average_rating])
Converte i valori di altri tipi di dati in
TEXT
(carattere).
TO_STRING([sku_number])

Funzioni relative alla data

Funzione
Descrizione
Esempio
Aggiunge l'intervallo di tempo specificato a a
DATE
valore
DATE_ADD([invoice_date], 45, "day")
Calcola il tempo compreso tra 2
DATE
valori (
value1
-
value2
) e lo tronca in giorni (contabilità per l'ora legale).
DAYS_BETWEEN([ship_date], [order_date])
Restituisce la parte specificata di a
DATE
valore
EXTRACT("hour",[order_date])
Calcola il numero intero di ore (ignorando minuti, secondi e millisecondi) tra due
DATE
valori (
value1
-
value2
).
HOURS_BETWEEN([ship_date],[order_date])
Calcola il numero intero di millisecondi compreso tra due
DATE
valori (
value1
-
value2
).
MILLISECONDS_BETWEEN([request_timestamp], [response_timestamp])
Calcola il numero intero di minuti (ignorando secondi e millisecondi) tra due
DATE
valori (
value1
-
value2
).
MINUTES_BETWEEN([impression_timestamp], [conversion_timestamp])
Calcola il numero intero di secondi (ignorando i millisecondi) tra due
DATE
valori (
value1
-
value2
).
SECONDS_BETWEEN([impression_timestamp], [conversion_timestamp])
Restituisce la data e l'ora correnti del sistema come a
DATE
valore (nessuna informazione temporale). Può essere utilizzato in altre espressioni che coinvolgono
DATE
campi di tipo, ad esempio
YEAR_DIFF
. Si noti che il valore di
TODAY
viene valutato solo al momento della pubblicazione di un set di dati (non viene rivalutato a ogni query).
YEAR_DIFF(TODAY(), [birthdate])
Tronca a
DATE
valore nel formato specificato.
TRUNC(TO_DATE([order_date], "MM/dd/yyyy HH:mm:ss"), "day")
Calcola il numero frazionario di anni compreso tra due
DATE
valori (
value1
-
value2
).
YEAR_DIFF(TODAY(), [birthdate])

Funzioni informative

Funzione
Descrizione
Esempio
Resi
0
se il valore restituito è
NULL
, e
1
se il valore restituito è
NOT NULL
. Ciò è utile per calcolare altri calcoli in cui si desidera escludere valori NULL (ad esempio quando si calcolano le medie).
IS_VALID([sale_amount])

Funzioni di istanza

Funzione
Descrizione
Esempio
Crea un campo Istanza multipla da uno o più campi Istanza o Istanza multipla forniti.
CREATE_MULTI_INSTANCE([Journal1], [Journal2], [Journal3])
Confronta un campo Istanza multipla o Istanza con un campo Istanza multipla, un campo Istanza o un elenco di valori di istanza e restituisce Vero se nel primo argomento esiste almeno un valore di istanza e Falso se nessuno di essi esiste. .
INSTANCE_CONTAINS_ANY([Worktags], [Cost Center 1], [Cost Center 2])
Restituisce il numero totale di valori di istanza in un campo Istanza multipla o Istanza. Questa funzione restituisce 0 quando il campo è vuoto.
INSTANCE_COUNT([Journal Lines])
Confronta un campo Istanza multipla o Istanza con un campo Istanza multipla, un campo Istanza o un elenco di valori di istanza e verifica se il primo argomento corrisponde esattamente ai valori di istanza forniti negli altri argomenti.
INSTANCE_EQUALS([Worktags], [Cost Center 1], [Cost Center 2])
Confronta un campo Istanza multipla con un campo Istanza multipla, un campo Istanza o un elenco di valori di istanza e restituisce Vero se tutti i valori di istanza sono presenti nel primo argomento e Falso se almeno uno non esiste.
INSTANCE_IS_SUPERSET_OF([Worktags], [Cost Center 1], [Cost Center 2])

Funzioni logiche

Funzione
Descrizione
Esempio
Valuta ogni riga del set di dati in base a una o più condizioni di input e restituisce il risultato specificato quando le condizioni di input vengono soddisfatte.
CASE WHEN [gender] = "M" THEN "Male" WHEN [gender] = "F" THEN "Female" ELSE "Unknown" END
Restituisce il primo valore valido (
NOT NULL
value) da un elenco di espressioni separate da virgole.
COALESCE([hourly_wage] * 40 * 52, [salary])

Funzioni matematiche

Funzione
Descrizione
Esempio
DIV
Divide due
LONG
valori e restituisce un valore quoziente di tipo
LONG
(il risultato viene troncato a 0 posizioni decimali).
DIV(TO_LONG([file_size]), 1024)
EXP
Aumenta la costante matematica
e
alla potenza (esponente) di un valore numerico e restituisce un valore di tipo
DOUBLE
.
EXP([Value])
Restituisce il numero intero più grande inferiore o uguale all'argomento di input.
FLOOR(32.6789) returns
32.0
Suddivide in modo uniforme i valori dei dati nel numero di bucket specificato. Crea un hash del valore di input e assegna a tale valore un numero di bucket. I valori uguali avranno sempre lo stesso numero di bucket.
HASH([username],20)
LN
Restituisce il logaritmo naturale di un numero. Il logaritmo naturale è il logaritmo della base
e
, dove
e
(Il numero di Eulero) è una costante matematica corrispondente a circa 2,718281828. Logaritmo naturale di un numero
x
è la potenza a cui è associata la costante
e
deve essere aumentato per ottenere l'uguaglianza
x
.
LN(2.718281828) returns
1
MOD
Divide 2
LONG
o
INTEGER
valori e restituisce il valore residuo di tipo
LONG
o
INTEGER
(il risultato viene troncato a 0 posizioni decimali).
MOD(TO_LONG([file_size]), 1024)
POW
Eleva il valore numerico a alla potenza (esponente) di un altro valore numerico e restituisce un valore di tipo
DOUBLE
.
100 * POW([end_value]/[start_value], 0.2) - 1
Arrotonda un valore numerico al numero specificato di posizioni decimali e restituisce un valore di tipo
DOUBLE
.
ROUND(32.4678954,2) returns
32.47

Funzioni di testo

Funzione
Descrizione
Esempio
Ne confronta due
TEXT
argomenti che rappresentano una maschera CIDR e un indirizzo IP e restituisce
1
se l'indirizzo IP rientra nella subnet mask specificata o
0
in caso contrario.
CIDR_MATCH("60.145.56.0/24", "60.145.56.246") returns
1
Restituisce a
TEXT
concatenando (combinando insieme) i risultati di più
TEXT
espressioni
CONCAT([month], "/", [day], "/", [year])
Estrae il valore dell'identificatore del cookie specificato da un elenco delimitato da punti e virgola di coppie chiave/valore del cookie. Questa funzione può essere utilizzata per estrarre un determinato valore di cookie da una colonna Cookie del registro accessi Web combinato.
EXTRACT_COOKIE("SSID=ABC; vID=44", "vID") returns
44
Estrae il valore della chiave specificata da una stringa contenente coppie chiave/valore delimitate.
EXTRACT_VALUE("firstname;daria|lastname;hutch", "lastname", ";", "|") returns
hutch
Restituisce il nome del file originale dal file system di origine quando i dati provengono da un set di dati di base. I nuovi utenti di Workday non dispongono dell'accesso per creare o modificare i set di dati di base.
TO_DATE(SUBSTRING(FILE_NAME(), 0, 8), "yyyyMMdd")
Converte un valore con codifica esadecimale
TEXT
valore a una rappresentazione testuale di un indirizzo IP.
HEX_TO_IP(AB20FE01) returns
171.32.254.1
Restituisce un numero intero che indica la posizione di un carattere all'interno di una stringa che è il primo carattere dell'occorrenza di una sottostringa. Il
INSTR
La funzione è simile alla funzione TROVA in Excel, ad eccezione del fatto che la prima lettera è nella posizione 0 e l'ordine degli argomenti è invertito.
INSTR([url], "http://", -1, 1)
Restituisce la versione senza caratteri di escape di una sequenza di escape di caratteri Unicode Java come a
TEXT
valore
CASE WHEN [currency] == JAVA_STRING("\u00a5") THEN "yes" ELSE "no" END
Restituisce a
TEXT
concatenando (combinando insieme) i risultati di più
TEXT
valori con il separatore tra ogni valore non null.
JOIN_STRINGS("/", [month], [day], [year])
Estrae a
NUMERIC
valore da un campo in un oggetto JSON.
JSON_DECIMAL([top_scores], "test_scores.2")
Estrae a
DOUBLE
valore da un campo in un oggetto JSON.
JSON_DOUBLE([top_scores], "test_scores.2")
Estrae un
INTEGER
valore da un campo in un oggetto JSON.
JSON_INTEGER([top_scores], "test_scores.2")
Estrae a
LONG
valore da un campo in un oggetto JSON.
JSON_LONG([top_scores], "test_scores.2")
Estrae a
TEXT
valore da un campo in un oggetto JSON.
JSON_STRING([misc], "hobbies.0")
Restituisce il numero di caratteri in a
TEXT
valore
LENGTH([name])
Restituisce più valori di output raggruppati in un'unica stringa di coppie chiave/valore separate dalla chiave predefinita e dai separatori di coppia. La stringa restituita è in un formato leggibile da
EXTRACT_VALUE
funzione
PACK_VALUES
utilizza gli stessi valori di chiave e separatore di coppia che
EXTRACT_VALUE
utilizza (le sequenze di escape Unicode
u0003
e
u0002
, rispettivamente).
PACK_VALUES("ID", [custid], "Age", [age])
Esegue una corrispondenza di intera stringa con a
TEXT
value con un'espressione regolare e restituisce la parte della stringa corrispondente al primo gruppo di acquisizione dell'espressione regolare.
REGEX([email], "^[a-zA-Z0-9._%+-]+@
([a-zA-Z0-9._-]+)
\.[a-zA-Z]{2,4}$")
Valuta a
TEXT
value rispetto a un'espressione regolare per determinare se esiste una corrispondenza e sostituisce le stringhe corrispondenti con il valore di sostituzione specificato.
REGEX_REPLACE([phone_number], "([0-9]{3})\.([[0-9]]{3})\.([[0-9]]{4})", "\($1\) $2-$3")
Restituisce i caratteri di un valore stringa nell'ordine opposto.
REVERSE("123 Main Street")
Restituisce i caratteri specificati di a
TEXT
valore in base alla posizione iniziale e alla posizione finale facoltativa specificate.
SUBSTRING([name], 0, 1)
Converte tutti i caratteri alfabetici in a
TEXT
valore in minuscolo.
TO_LOWER("123 Main Street") returns
123 main street
Restituisce a
TEXT
valore con la prima lettera di ogni parola in maiuscolo.
TO_PROPER("123 Alameda de las Pulgas, San Mateo CA")
Converte tutti i caratteri alfabetici in a
TEXT
valore in maiuscolo.
TO_UPPER("123 Main Street")
Rimuove gli spazi iniziali e finali da a
TEXT
valore
TRIM([area_code])
Accetta XML e restituisce la prima stringa corrispondente all'espressione XPath specificata.
XPATH_STRING([address], "//address[@type='home']/zipcode")

Funzioni URL

Funzione
Descrizione
Esempio
Restituisce la parte di autorità di una stringa URL. La parte di autorità di un URL è la parte che contiene le informazioni su come individuare e connettersi al server.
URL_AUTHORITY("http://user:password@mycompany.com:8012/mypage.html")
Restituisce la parte del frammento di una stringa URL.
URL_FRAGMENT("http://workday.com/news.php?topic=press#Workday%20News")
Restituisce la parte dell'host, del dominio o dell'indirizzo IP di una stringa URL.
URL_HOST("http://user:password@mycompany.com:8012/mypage.html")
Restituisce la parte del percorso di una stringa URL.
URL_PATH("http://workday.com/company/contact.html")
Restituisce la parte della porta di una stringa URL.
URL_PORT("http://user:password@mycompany.com:8012/mypage.html")
Restituisce la parte del protocollo (o del nome dello schema URI) di una stringa URL.
URL_PROTOCOL("http://www.workday.com")
Restituisce la parte della query di una stringa URL.
URL_QUERY("http://workday.com/news.php?topic=press&timeframe=today")
Decodifica a
TEXT
valore codificato con
application/x-www-form-urlencoded
tipo di supporto
URLDECODE("N%2FA%20or%20%22not%20applicable%22")

Funzioni finestra

Funzione
Descrizione
Esempio
AVG
Funzione di aggregazione della finestra che suddivide le righe in gruppi, ordina le righe in base a un campo e restituisce la media di tutti i valori numerici validi nel gruppo. Somma tutti i valori nel gruppo e li divide per il numero di righe valide (NON NULL). È possibile utilizzare
AVG
per calcolare le medie mobili.
AVG([Sales]) OVER( PARTITION BY [Employee] ORDER BY [SalesDate] DESC ROWS UNBOUNDED PRECEDING)
Funzione di aggregazione della finestra che suddivide le righe in gruppi, ordina le righe in base a un campo e restituisce il numero totale di righe valide (NON NULL) nel gruppo. È possibile utilizzare
COUNT
insieme ad altre funzioni per calcolare gli aggregati cumulativi.
COUNT([Sales]) OVER( PARTITION BY [Employee] ORDER BY [SalesDate] DESC ROWS UNBOUNDED PRECEDING)
È una funzione di aggregazione della finestra che suddivide le righe in gruppi, ordina le righe in base a un campo e restituisce il valore della prima riga del gruppo.
LAG
È una funzione di aggregazione della finestra che suddivide le righe in gruppi, ordina le righe in base a un campo e restituisce il valore di un campo nella riga in corrispondenza dell'offset specificato prima (sopra) della riga corrente nel gruppo.
[Salary] - (LAG([Salary], 1, [Salary]) OVER( PARTITION BY [Employee_Name] ORDER BY [Eff_Date] ASC) )
È una funzione di aggregazione della finestra che suddivide le righe in gruppi, ordina le righe in base a un campo e restituisce il valore dell'ultima riga del gruppo.
È una funzione di aggregazione della finestra che suddivide le righe in gruppi, ordina le righe in base a un campo e restituisce il valore di un campo nella riga in corrispondenza dell'offset specificato dopo (sotto) la riga corrente nel gruppo.
[Salary] - (LEAD([Salary], 1, [Salary]) OVER( PARTITION BY [Employee_Name] ORDER BY [Eff_Date] DESC) )
MAX
È una funzione di aggregazione della finestra che suddivide le righe in gruppi, ordina le righe in base a un campo e restituisce il valore massimo (più alto) nel gruppo.
MAX([Comp Change]) OVER( PARTITION BY [Supervisory Org], [Quarter] ORDER BY [Comp Change] DESC ROWS BETWEEN UNBOUNDED PRECEDING AND UNBOUNDED FOLLOWING )
MIN
È una funzione di aggregazione della finestra che suddivide le righe in gruppi, ordina le righe in base a un campo e restituisce il valore minimo (più basso) nel gruppo.
MIN([Comp Change]) OVER( PARTITION BY [Supervisory Org], [Quarter] ORDER BY [Comp Change] ASC ROWS BETWEEN UNBOUNDED PRECEDING AND UNBOUNDED FOLLOWING )
Funzione di aggregazione della finestra utilizzata per assegnare un numero di classifica a ogni riga di un gruppo. Se più righe hanno lo stesso valore di classifica (è presente una parità), il sistema assegna lo stesso valore di classifica alle righe abbinate e ignora la posizione di classifica successiva.
RANK() OVER( PARTITION BY [Employee] ORDER BY [Sales] DESC)
È una funzione di aggregazione della finestra che suddivide le righe in gruppi, ordina le righe in base a un campo e assegna un numero sequenziale univoco a ogni riga di un gruppo, a partire da 1 per la prima riga di ogni gruppo.
ROW_NUMBER
assegna sempre un valore univoco a ogni riga di un gruppo. È possibile utilizzare
ROW_NUMBER
per creare un ID univoco per ogni riga del set di dati.
ROW_NUMBER() OVER( PARTITION BY [Employee] ORDER BY [Sales] DESC)
SUM
È una funzione di aggregazione della finestra che suddivide le righe in gruppi, ordina le righe in base a un campo e restituisce il totale di tutti i valori nel gruppo. È possibile utilizzare
SUM
per calcolare i totali parziali.
SUM([fieldA]) OVER( PARTITION BY [fieldB] ORDER BY [Month] RANGE 11 PRECEDING)

Operatori aritmetici

Operatore
Significato
Esempio
+
Aggiunta
[amount] + 10
Aggiungere 10 al valore del campo [amount].
-
Sottrazione
[amount] - 10
Sottrarre 10 dal valore del campo [amount].
*
Moltiplicazione
[amount] * 100
Moltiplicare il valore del campo [amount] per 100.
/
Divisione
[bytes] / 1024
Dividere il valore del campo [bytes] per 1024 e restituire il quoziente.

Operatori di confronto

Operatore
Significato
Esempio
=
o
==
È uguale a
[order_date] = "12/22/2016"
>
è superiore a
[age] > 18
!>
Non superiore a (equivalente a
<
)
[age] !> 8
<
Minore di
[age] < 30
!<
Non meno di (equivalente a
>=
)
[age] !< 12
>=
Maggiore o uguale a
[age] >= 20
<=
Minore o uguale a
[age] <= 29
<>
o
!=
o
^=
Diverso da
[age] <> 30
BETWEEN
min_value
AND
max_value
Verificare se una data o un valore numerico rientra nei valori
minimo
e
massimo
(inclusi).
[year] BETWEEN 2014 AND 2016
IN(
list
)
Verificare se un valore è all'interno di un insieme.
[product_type] IN("tablet","phone","laptop")
LIKE("
pattern
")
Corrispondenza semplice inclusiva di modelli di caratteri senza distinzione tra maiuscole e minuscole. Il
*
il carattere corrisponde a un numero qualsiasi di caratteri. Il
?
il carattere corrisponde esattamente a 1 (un singolo) carattere.
[last_name] LIKE("?utch*")
Corrisponde
a Kutcher
,
hutch
ma non
a Krutcher
o
alla stampella
[company_name] LIKE("workday")
Corrisponde
a Workday
o
workday
valore
IS NULL
Controllare se un valore di campo o un'espressione è null (vuoto).
[ship_date] IS NULL
Restituisce
vero
quando il campo
ship_date
è vuoto

Operatori logici

Operatore
Significato
Esempio
AND
Verificare se due condizioni sono vere.
OR
Verificare se una delle due condizioni è vera.
NOT
Inverte il valore di altri operatori.
  • year
    NOT
    BETWEEN 2013 AND 2016
  • first_name
    NOT
    LIKE("Jo?n*")
    Esclude
    John
    ,
    Jonny
    ma non
    Jon
    o
    Joann
  • Weekday
    NOT
    IN("Saturday", "Sunday")
  • purchase_date IS
    NOT
    NULL
    Restituisce
    Vero
    quando il campo
    data_acquisto
    non è vuoto