Passer au contenu principal
Workday User Guide
Dernière mise à jour : 2024-06-28
Référence rapide d'expression Prism

Référence rapide d'expression Prism

Fonctions de conversion

Fonction
Description
Exemple
Crée un champ de devise à partir d'un
NUMERIC
valeur et une
TEXT
ou
INSTANCE
valeur qui contient un code de devise valide. Lorsque le code de devise n’est pas valide, cette fonction renvoie la valeur NULL.
BUILD_CURRENCY([Sale Price], [Currency Code])
Convertit les valeurs de données d’un type de champ (type de données) en un autre.
CAST([Region] AS Instance(eecb565181284b6a8ae8b45dc3ed1451))
CAST(99.99 AS decimal(10,3))
retours
99.990
.
CAST(99.99 AS decimal(20,2))
retours
99.99
.
CAST(99.999 AS decimal(10,2))
retours
100.00
.
Conversion
LONG
valeurs à
DATE
values, où le nombre d’entrée représente le nombre de millisecondes écoulées depuis l’époque.
EPOCH_MS_TO_DATE(1360260240000) returns
2013-02-07T18:04:00:000Z
Prend une valeur de devise et extrait le montant numérique sous forme de
NUMERIC
valeur.
EXTRACT_AMOUNT([Salary])
Prend une
CURRENCY
et extrait le code de devise en tant que
INSTANCE
valeur.
EXTRACT_CODE([Salary])
Prend une
CURRENCY
et extrait le code de devise en tant que
TEXT
valeur.
EXTRACT_CODE_TEXT([Salary])
Conversion
TEXT
,
BOOLEAN
,
INTEGER
,
LONG
, ou
NUMERIC
valeurs à
BOOLEAN
.
TO_BOOLEAN([is_contingent])
Conversion
TEXT
valeurs qui contiennent des données valides au format de devise à
CURRENCY
valeurs.
TO_CURRENCY("1234.56 USD")
TO_CURRENCY(CONCAT(TO_STRING([Grant Price]), [Grant Code]))
Conversion
TEXT
valeurs à
DATE
values et précise le format des éléments de date et d’heure dans la chaîne.
TO_DATE([order_date],"yyyy.MM.dd 'at' HH:mm:ss z")
Conversion
TEXT
,
BOOLEAN
,
INTEGER
,
LONG
,
DOUBLE
, ou
NUMERIC
valeurs à
NUMERIC
avec le nombre par défaut de chiffres avant et après la virgule.
TO_DECIMAL([average_rating])
Conversion
TEXT
,
BOOLEAN
,
INTEGER
,
LONG
, ou
DOUBLE
valeurs à
DOUBLE
(un type de numérique).
TO_DOUBLE([average_rating])
Conversion
TEXT
,
BOOLEAN
,
INTEGER
,
LONG
, ou
DOUBLE
valeurs à
INTEGER
(nombres entiers). Lors de la conversion
DOUBLE
valeurs, tout ce qui se trouve après la virgule sera tronqué (et non arrondi vers le haut ni vers le bas).
TO_INT([average_rating])
Conversion
TEXT
,
BOOLEAN
,
INTEGER
,
LONG
,
DECIMAL
,
DATE
, ou
DOUBLE
valeurs à
Long
(nombres entiers). Lors de la conversion
Decimal
ou
DOUBLE
valeurs, tout ce qui se trouve après la virgule sera tronqué (et non arrondi vers le haut ni vers le bas).
TO_LONG([average_rating])
Convertit les valeurs d'autres types de données en
TEXT
(caractères).
TO_STRING([sku_number])

Fonctions de date

Fonction
Description
Exemple
Ajoute l'intervalle de temps indiqué à
DATE
valeur.
DATE_ADD([invoice_date], 45, "day")
Calcule le temps entre 2
DATE
valeurs (
value1
-
value2
) et la tronque à jours (en tenant compte de l'heure avancée).
DAYS_BETWEEN([ship_date], [order_date])
Retourne la partie précisée d'un
DATE
valeur.
EXTRACT("hour",[order_date])
Calcule le nombre entier d'heures (en ignorant les minutes, les secondes et les millisecondes) entre deux
DATE
valeurs (
value1
-
value2
).
HOURS_BETWEEN([ship_date],[order_date])
Calcule le nombre entier de millisecondes entre deux
DATE
valeurs (
value1
-
value2
).
MILLISECONDS_BETWEEN([request_timestamp], [response_timestamp])
Calcule le nombre entier de minutes (en ignorant les secondes et les millisecondes) entre deux
DATE
valeurs (
value1
-
value2
).
MINUTES_BETWEEN([impression_timestamp], [conversion_timestamp])
Calcule le nombre entier de secondes (en ignorant les millisecondes) entre deux
DATE
valeurs (
value1
-
value2
).
SECONDS_BETWEEN([impression_timestamp], [conversion_timestamp])
Retourne la date et l'heure système actuelles sous forme de
DATE
valeur (aucune information sur les heures). Il peut être utilisé dans d’autres expressions concernant
DATE
champs de type , tels que
YEAR_DIFF
. Notez que la valeur de
TODAY
n'est évalué qu'au moment de la publication d'un jeu de données (il n'est pas réévalué avec chaque interrogation).
YEAR_DIFF(TODAY(), [birthdate])
Tronque une valeur de
DATE
valeur au format précisé.
TRUNC(TO_DATE([order_date], "MM/dd/yyyy HH:mm:ss"), "day")
Calcule le nombre fractionnaire d'années entre deux
DATE
valeurs (
value1
-
value2
).
YEAR_DIFF(TODAY(), [birthdate])

Fonctions d’information

Fonction
Description
Exemple
Retours
0
si la valeur retournée est
NULL
et
1
si la valeur retournée est
NOT NULL
. Cela est utile pour calculer d’autres calculs pour lesquels vous souhaitez exclure des valeurs NULL (par exemple, lors du calcul de moyennes).
IS_VALID([sale_amount])

Fonctions d'instance

Fonction
Description
Exemple
Crée un champ Instances multiples à partir d'un ou de plusieurs champs Instances multiples fournis.
CREATE_MULTI_INSTANCE([Journal1], [Journal2], [Journal3])
Compare un champ Instances multiples ou Instance à un champ Instances multiples, un champ Instance ou à une liste de valeurs d'instance, et retourne la valeur Vrai si au moins une valeur d'instance existe dans le premier argument, et la valeur Faux si aucune n'existe .
INSTANCE_CONTAINS_ANY([Worktags], [Cost Center 1], [Cost Center 2])
Retourne le nombre total de valeurs d'instance dans un champ Instances multiples ou Instance. Cette fonction renvoie 0 lorsque le champ est vide.
INSTANCE_COUNT([Journal Lines])
Compare un champ Instances multiples ou Instance à un champ Instances multiples, un champ Instance ou à une liste de valeurs d’instance, et vérifie si le premier argument correspond exactement aux valeurs d’instance fournies dans les autres arguments.
INSTANCE_EQUALS([Worktags], [Cost Center 1], [Cost Center 2])
Compare un champ Instances multiples à un champ Instances multiples, un champ Instance ou à une liste de valeurs d'instance, et retourne la valeur Vrai si chaque valeur d'instance existe dans le premier argument, et la valeur Faux si au moins une n'existe pas.
INSTANCE_IS_SUPERSET_OF([Worktags], [Cost Center 1], [Cost Center 2])

Fonctions logiques

Fonction
Description
Exemple
Évalue chaque rangée du jeu de données en fonction d'une ou plusieurs conditions d'entrée et génère le résultat précisé lorsque les conditions d'entrée sont remplies.
CASE WHEN [gender] = "M" THEN "Male" WHEN [gender] = "F" THEN "Female" ELSE "Unknown" END
Retourne la première valeur valide (
NOT NULL
value) à partir d’une liste d’expressions séparées par des virgules.
COALESCE([hourly_wage] * 40 * 52, [salary])

Fonctions mathématiques

Fonction
Description
Exemple
DIV
Divise deux
LONG
valeurs et retourne une valeur de quotient de type
LONG
(le résultat est tronqué à 0 décimale).
DIV(TO_LONG([file_size]), 1024)
EXP
Élève la constante mathématique
e
à la puissance (exposant) d'une valeur numérique et retourne une valeur de type
DOUBLE
.
EXP([Value])
Retourne le plus grand entier qui est inférieur ou égal à l'argument d'entrée.
FLOOR(32.6789) returns
32.0
Partitionne uniformément les valeurs de données dans le nombre précisé de compartiments. Il crée un hachage de la valeur d’entrée et attribue à cette valeur un numéro de compartiment. Les valeurs égales seront toujours hachées dans le même numéro de compartiment.
HASH([username],20)
LN
Renvoie le logarithme naturel d’un nombre. Le logarithme naturel est le logarithme de la base
e
, où
e
(Nombre d’Euler) est une constante mathématique aprobatoire égale à 2,718281828. Logarithme naturel d'un nombre
x
est la puissance à laquelle la constante
e
doit être élevé pour être égal à
x
.
LN(2.718281828) returns
1
MOD
Divise la valeur 2
LONG
ou
INTEGER
et retourne la valeur restante du type
LONG
ou
INTEGER
(le résultat est tronqué à 0 décimale).
MOD(TO_LONG([file_size]), 1024)
POW
Élève la valeur numérique à la puissance (exposant) d'une autre valeur numérique et retourne une valeur de type
DOUBLE
.
100 * POW([end_value]/[start_value], 0.2) - 1
Arrondit une valeur numérique au nombre de décimales précisé et retourne une valeur de type
DOUBLE
.
ROUND(32.4678954,2) returns
32.47

Fonctions de texte

Fonction
Description
Exemple
Compare deux
TEXT
arguments représentant un masque CIDR et une adresse IP, et retourne
1
si l'adresse IP se trouve dans le masque de sous-réseau précisé, ou
0
si ce n’est pas le cas.
CIDR_MATCH("60.145.56.0/24", "60.145.56.246") returns
1
Renvoie une
TEXT
en concaténant (en combinant) les résultats de plusieurs
TEXT
expressions.
CONCAT([month], "/", [day], "/", [year])
Extrait la valeur de l'identifiant de cookie donné à partir d'une liste de paires clé/valeur de cookies délimitées par des points-virgules. Cette fonction peut être utilisée pour extraire une valeur de cookie particulière à partir d’une colonne de cookie combinée du journal d’accès Web.
EXTRACT_COOKIE("SSID=ABC; vID=44", "vID") returns
44
Extrait la valeur de la clé donnée à partir d'une chaîne contenant des paires clé/valeur délimitées.
EXTRACT_VALUE("firstname;daria|lastname;hutch", "lastname", ";", "|") returns
hutch
Renvoie le nom de fichier d’origine à partir du système de fichiers source lorsque les données proviennent d’un jeu de données de base. Si vous êtes un nouvel utilisateur de Workday, vous n’avez pas l’accès pour créer ni modifier des jeux de données de base.
TO_DATE(SUBSTRING(FILE_NAME(), 0, 8), "yyyyMMdd")
Convertit une valeur hexadécimale
TEXT
à une représentation textuelle d'une adresse IP.
HEX_TO_IP(AB20FE01) returns
171.32.254.1
Retourne un nombre entier indiquant la position d'un caractère dans une chaîne qui est le premier caractère de l'occurrence d'une sous-chaîne. La
INSTR
La fonction est similaire à la fonction Find dans Excel, sauf que la première lettre est la position 0 et que l’ordre des arguments est inversé.
INSTR([url], "http://", -1, 1)
Retourne la version non échappée d'une séquence d'échappement de caractères Unicode Java sous forme d'un
TEXT
valeur.
CASE WHEN [currency] == JAVA_STRING("\u00a5") THEN "yes" ELSE "no" END
Renvoie une
TEXT
en concaténant (en combinant) les résultats de plusieurs
TEXT
avec le séparateur entre chaque valeur non nulle.
JOIN_STRINGS("/", [month], [day], [year])
Extrait une
NUMERIC
une valeur d'un champ dans un objet JSON.
JSON_DECIMAL([top_scores], "test_scores.2")
Extrait une
DOUBLE
une valeur d'un champ dans un objet JSON.
JSON_DOUBLE([top_scores], "test_scores.2")
Extrait une
INTEGER
une valeur d'un champ dans un objet JSON.
JSON_INTEGER([top_scores], "test_scores.2")
Extrait une
LONG
une valeur d'un champ dans un objet JSON.
JSON_LONG([top_scores], "test_scores.2")
Extrait une
TEXT
une valeur d'un champ dans un objet JSON.
JSON_STRING([misc], "hobbies.0")
Retourne le nombre de caractères dans une
TEXT
valeur.
LENGTH([name])
Retourne plusieurs valeurs de sortie regroupées dans une seule chaîne de paires clé/valeur séparées par les séparateurs de clé et de paire par défaut. La chaîne retournée est dans un format qui peut être lu par
EXTRACT_VALUE
une fonction.
PACK_VALUES
utilise les mêmes valeurs de séparateur de clé et de paire que
EXTRACT_VALUE
utilise (les séquences d'échappement Unicode
u0003
et
u0002
, respectivement).
PACK_VALUES("ID", [custid], "Age", [age])
Exécute une correspondance de chaîne entière avec un
TEXT
avec une expression rationnelle et retourne la partie de la chaîne correspondant au premier groupe de saisie de l'expression rationnelle.
REGEX([email], "^[a-zA-Z0-9._%+-]+@
([a-zA-Z0-9._-]+)
\.[a-zA-Z]{2,4}$")
Évalue une
TEXT
par rapport à une expression rationnelle pour déterminer s’il existe une correspondance, et remplace les chaînes correspondantes par la valeur de remplacement spécifiée.
REGEX_REPLACE([phone_number], "([0-9]{3})\.([[0-9]]{3})\.([[0-9]]{4})", "\($1\) $2-$3")
Renvoie les caractères d’une valeur de chaîne dans l’ordre inverse.
REVERSE("123 Main Street")
Renvoie les caractères précisés d’une valeur
TEXT
en fonction de la position de début et la position de fin facultative données.
SUBSTRING([name], 0, 1)
Convertit tous les caractères alphabétiques dans une
TEXT
la valeur en minuscules.
TO_LOWER("123 Main Street") returns
123 main street
Renvoie une
TEXT
avec la première lettre de chaque mot en majuscule.
TO_PROPER("123 Alameda de las Pulgas, San Mateo CA")
Convertit tous les caractères alphabétiques dans une
TEXT
la valeur en majuscules.
TO_UPPER("123 Main Street")
Retire les espaces de début et de fin d'un
TEXT
valeur.
TRIM([area_code])
Prend XML et renvoie la première chaîne correspondant à l’expression XPath donnée.
XPATH_STRING([address], "//address[@type='home']/zipcode")

Fonctions d'adresse URL

Fonction
Description
Exemple
Renvoie la partie de l’administration d’une chaîne d’URL. La partie de l’administration d’une adresse URL est la partie qui contient l’information sur la localisation du serveur et la connexion au serveur.
URL_AUTHORITY("http://user:password@mycompany.com:8012/mypage.html")
Renvoie la partie fragment d'une chaîne d'adresse URL.
URL_FRAGMENT("http://workday.com/news.php?topic=press#Workday%20News")
Renvoie la partie hôte, domaine ou adresse IP d’une chaîne d’adresse URL.
URL_HOST("http://user:password@mycompany.com:8012/mypage.html")
Renvoie la partie chemin d'accès d'une chaîne d'adresse URL.
URL_PATH("http://workday.com/company/contact.html")
Renvoie la partie port d’une chaîne d’adresse URL.
URL_PORT("http://user:password@mycompany.com:8012/mypage.html")
Renvoie la partie protocole (ou nom du système d’URI) d’une chaîne d’adresse URL.
URL_PROTOCOL("http://www.workday.com")
Renvoie la partie requête d'une chaîne d'adresse URL.
URL_QUERY("http://workday.com/news.php?topic=press&timeframe=today")
Décode une
TEXT
valeur qui a été encodée avec la valeur
application/x-www-form-urlencoded
type de média.
URLDECODE("N%2FA%20or%20%22not%20applicable%22")

Fonctions de fenêtre

Fonction
Description
Exemple
AVG
Est une fonction d'agrégation de fenêtre qui partitionne les rangées en groupes, trie les rangées en fonction d'un champ et retourne la moyenne de toutes les valeurs numériques valides du groupe. Il additionne toutes les valeurs du groupe et les divise par le nombre de rangées valides (NOT NULL). Vous pouvez utiliser
AVG
pour calculer les moyennes mobiles.
AVG([Sales]) OVER( PARTITION BY [Employee] ORDER BY [SalesDate] DESC ROWS UNBOUNDED PRECEDING)
Est une fonction d'agrégation de fenêtre qui partitionne les rangées en groupes, trie les rangées en fonction d'un champ et retourne le nombre total de rangées valides (NOT NULL) dans le groupe. Vous pouvez utiliser
COUNT
avec d’autres fonctions pour calculer les regroupements cumulatifs.
COUNT([Sales]) OVER( PARTITION BY [Employee] ORDER BY [SalesDate] DESC ROWS UNBOUNDED PRECEDING)
Est une fonction d'agrégation de fenêtre qui partitionne les rangées en groupes, trie les rangées en fonction d'un champ et retourne la valeur de la première rangée du groupe.
LAG
Est une fonction d'agrégation de fenêtre qui partitionne les rangées en groupes, trie les rangées en fonction d'un champ et retourne la valeur d'un champ dans la rangée au décalage précisé avant (au-dessus) de la rangée actuelle dans le groupe.
[Salary] - (LAG([Salary], 1, [Salary]) OVER( PARTITION BY [Employee_Name] ORDER BY [Eff_Date] ASC) )
Est une fonction d'agrégation de fenêtre qui partitionne les rangées en groupes, trie les rangées en fonction d'un champ et retourne la valeur de la dernière rangée du groupe.
Est une fonction d'agrégation de fenêtre qui partitionne les rangées en groupes, trie les rangées en fonction d'un champ et retourne la valeur d'un champ dans la rangée au décalage précisé après (en dessous) de la rangée actuelle dans le groupe.
[Salary] - (LEAD([Salary], 1, [Salary]) OVER( PARTITION BY [Employee_Name] ORDER BY [Eff_Date] DESC) )
MAX
Est une fonction d'agrégation de fenêtre qui partitionne les rangées en groupes, trie les rangées en fonction d'un champ et retourne la valeur maximale (la plus élevée) du groupe.
MAX([Comp Change]) OVER( PARTITION BY [Supervisory Org], [Quarter] ORDER BY [Comp Change] DESC ROWS BETWEEN UNBOUNDED PRECEDING AND UNBOUNDED FOLLOWING )
MIN
Est une fonction d'agrégation de fenêtre qui partitionne les rangées en groupes, trie les rangées en fonction d'un champ et retourne la valeur minimum (la plus basse) du groupe.
MIN([Comp Change]) OVER( PARTITION BY [Supervisory Org], [Quarter] ORDER BY [Comp Change] ASC ROWS BETWEEN UNBOUNDED PRECEDING AND UNBOUNDED FOLLOWING )
Est une fonction d'agrégation de fenêtre utilisée pour attribuer un numéro de classement à chaque rangée d'un groupe. Si plusieurs rangées ont la même valeur de classement (il y a égalité), Workday affecte la même valeur de rang aux rangées liées et omet la position de classement suivante.
RANK() OVER( PARTITION BY [Employee] ORDER BY [Sales] DESC)
Est une fonction d'agrégation de fenêtre qui partitionne les rangées en groupes, trie les rangées en fonction d'un champ et attribue un numéro séquentiel unique à chaque rangée d'un groupe, en commençant par 1 pour la première rangée de chaque groupe.
ROW_NUMBER
affecte toujours une valeur unique à chaque rangée d'un groupe. Vous pouvez utiliser
ROW_NUMBER
afin de créer un identifiant unique pour chaque rangée de votre jeu de données.
ROW_NUMBER() OVER( PARTITION BY [Employee] ORDER BY [Sales] DESC)
SUM
Est une fonction d'agrégation de fenêtre qui partitionne les rangées en groupes, trie les rangées en fonction d'un champ et retourne le total de toutes les valeurs du groupe. Vous pouvez utiliser
SUM
pour calculer les totaux cumulés.
SUM([fieldA]) OVER( PARTITION BY [fieldB] ORDER BY [Month] RANGE 11 PRECEDING)

Opérateurs arithmétiques

Opérateur
Signification
Exemple
+
Ajout
[amount] + 10
Ajoutez 10 à la valeur du champ [amount].
-
Soustraction
[amount] - 10
Soustrayez 10 de la valeur du champ [amount].
*
Multiplication
[amount] * 100
Multipliez la valeur du champ [amount] par 100.
/
Division
[bytes] / 1024
Divisez la valeur du champ [octets] par 1024 et retournez le quotient.

Opérateurs de comparaison

Opérateur
Signification
Exemple
=
ou
==
est égal à
[order_date] = "12/22/2016"
>
Supérieur à
[age] > 18
!>
Pas supérieur à (équivalent à
<
)
[age] !> 8
<
Inférieur à
[age] < 30
!<
Pas inférieur à (équivalent à
>=
)
[age] !< 12
>=
Supérieur ou égal à
[age] >= 20
<=
Inférieur ou égal à
[age] <= 29
<>
ou
!=
ou
^=
Différent de
[age] <> 30
BETWEEN
min_value
AND
max_value
Sert à vérifier si une valeur numérique ou de date se situe entre les valeurs
minimum
et
maximum
(inclusivement).
[year] BETWEEN 2014 AND 2016
IN(
list
)
Teste si une valeur fait partie d’un ensemble.
[product_type] IN("tablet","phone","laptop")
LIKE("
pattern
")
Mise en correspondance de modèles de caractères non sensibles à la casse inclusivement. La
*
correspond à n'importe quel nombre de caractères. La
?
caractère correspond exactement à 1 (un seul) caractère.
[last_name] LIKE("?utch*")
Correspond à
Kutcher
, mais ne
correspond
pas
à Kutcher
ou
à la crucrue
[company_name] LIKE("workday")
Correspond
à Workday
ou
à Workday
valeur
IS NULL
Sert à vérifier si une valeur de champ ou une expression est nulle (vide).
[ship_date] IS NULL
Évalue la valeur
Vrai
lorsque le champ
Expédier à la date
est vide

Opérateurs logiques

Opérateur
Signification
Exemple
AND
Testez si deux conditions sont vraies.
OR
Vérifiez si l’une des deux conditions est vraie.
NOT
Contrepasse la valeur des autres opérateurs.
  • year
    NOT
    BETWEEN 2013 AND 2016
  • first_name
    NOT
    LIKE("Jo?n*")
    Exclut
    Jon
    , mais
    pas
    Jon
    ou
    Joann
  • Weekday
    NOT
    IN("Saturday", "Sunday")
  • purchase_date IS
    NOT
    NULL
    Évalue à
    vrai
    lorsque le champ
    Purchase_date
    n'est pas vide