Fonctions Spark SQL

Vous pouvez utiliser plusieurs fonctions Spark SQL intégrées pour étendre les fonctionnalités SQL avec Adobe Experience Platform Query Service. Ce document répertorie les fonctions Spark SQL prises en charge par Query Service.

Pour plus d’informations sur les fonctions, notamment leur syntaxe, leur utilisation et des exemples, consultez la section Documentation sur les fonctions Spark SQL.

NOTE
Certaines fonctions de la documentation externe ne sont pas prises en charge.

Fonctions et opérateurs mathématiques et statistiques math

Opérateur/fonction
Description
%
Renvoie le reste des deux nombres
*
Multiplie les deux nombres
+
Additionne les deux nombres
-
Soustrait les deux nombres
/
Divise les deux nombres
abs
Renvoie la valeur absolue de l’entrée
acos
Renvoie la valeur de l’inverse du cosinus
approx_count_distinct
Renvoie la cardinalité estimée par HyperLogLog++
approx_percentile
Renvoie la valeur approximative du centile au pourcentage donné
asin
Renvoie la valeur de l’inverse du sinus
atan
Renvoie la valeur inverse de la tangente
atan2
Renvoie l’angle entre le plan de l’axe X positif et les points donnés par les coordonnées
avg
Renvoie la valeur moyenne
cbrt
Renvoie la racine cubique
ceil ou ceiling
Renvoie le plus petit entier non supérieur à la valeur saisie
conv
Convertir une base en une autre
corr
Renvoie le coefficient de Pearson entre les nombres
cos
Renvoie la valeur du cosinus
cosh
Renvoie la valeur du cosinus hyperbolique
cot
Renvoie la valeur de la cotangente
dense_rank
Renvoie le rang d’une valeur dans un groupe de valeurs
e
Renvoie le nombre d’Euler
exp
Renvoie e à la puissance de la valeur
expm1
Renvoie e à la puissance de la valeur moins 1
factorial
Renvoie la factorielle de la valeur
floor
Renvoie le plus grand entier non inférieur à la valeur
greatest
Renvoie la plus grande valeur de tous les paramètres
hypot
Renvoie l’hypoténuse des deux valeurs données
kurtosis
Renvoie la valeur du kurtosis du groupe
least
Renvoie la plus petite valeur de tous les paramètres
ln
Renvoie le logarithme naturel de la valeur
log
Renvoie le logarithme de la valeur
log10
Renvoie le logarithme, en base 10, de la valeur
log1p
Renvoie le logarithme de la valeur plus 1
log2
Renvoie le logarithme, en base 2, de la valeur
max
Renvoie la valeur maximale de l’expression
mean
Renvoie la moyenne calculée à partir des valeurs
min
Renvoie la valeur minimale de l’expression
monotonically_increasing_id
Renvoie des ID à augmentation monotone
negative
Renvoie la valeur négative
percent_rank
Renvoie le classement en pourcentage d’une valeur
percentile
Renvoie le centile exact à un pourcentage donné
percentile_approx
Renvoie le centile approximatif à un pourcentage donné
pi
Renvoie pi
pmod
Renvoie le modulo positif entre deux valeurs
positive
Renvoie la valeur positive
pow, power
Renvoie la première valeur à la puissance de la seconde valeur
radians
Convertit la valeur en radians
rand
Renvoie un nombre aléatoire compris entre 0 et 1
randn
Renvoie une valeur aléatoire
rint
Renvoie la valeur double la plus proche
round
Renvoie la valeur arrondie la plus proche
sign, signum
Renvoie le signe du nombre
sin
Renvoie le sinus de la valeur
sinh
Renvoie le sinus hyperbolique de la valeur
sqrt
Renvoie la racine carrée de la valeur
stddev
Renvoie l’écart type de la valeur
sttdev_pop
Renvoie l’écart type de la population de la valeur
stddev_samp
Renvoie l’écart type échantillon de la valeur
sum
Renvoie la somme des valeurs
tan
Renvoie la tangente de la valeur
tanh
Renvoie la tangente hyperbolique de la valeur
var_pop
Renvoie l’écart calculé de population
var_samp, variance
Renvoie l’écart calculé d’échantillon

Opérateurs logiques et fonctions logical-operators

Opérateur/fonction
Description
! ou not
NOT logique
<
Inférieur à
<=
Inférieur ou égal à
=
Égal à
>
Supérieur à
>=
Supérieur ou égal à
^
Résultat binaire « OU exclusif »
|
Au niveau du bit ou
~
Pas au niveau du bit
arrays_overlap
Renvoie les éléments communs
assert_true
Affirme si l’expression est vraie
if
Si l’expression est vraie, renvoie la deuxième expression. Sinon, renvoie la troisième expression.
ifnull
Si l’expression est nulle, il renvoie la seconde expression. Sinon, il renvoie la première expression.
in
Renvoie vrai si la première expression se trouve dans l’une des expressions suivantes.
isnan
Renvoie vrai si la valeur n’est pas un nombre
isnotnull
Renvoie vrai si la valeur nʼest pas nulle
isnull
Renvoie vrai si la valeur est nulle
nanvl
Renvoie la première expression si ce n’est pas un nombre, renvoie la seconde expression dans le cas contraire
or
Logique OR
when
Quand peut être utilisé pour créer des conditions de branche pour la comparaison
xpath_boolean
Renvoie vrai si l’expression XPath est évaluée comme vraie ou si un nœud correspondant est trouvé

Fonctions de date/heure datetime-functions

Fonction
Description
add_months
Ajouter les mois à la date
date_add
Ajouter les jours à la date
date_format
Modifier le format de date
date_sub
Soustraire les jours à partir de la date
date_trunc
Renvoie la date tronquée à l’unité spécifiée
datediff
Renvoie la différence entre les dates en jours
day, dayofmonth
Renvoie le jour du mois
dayofweek
Renvoie le jour de la semaine (1-7)
dayofyear
Renvoie le jour de l’année
from_unixtime
Renvoie la date sous UNIX® heure
from_utc_timestamp
Renvoie la date en heure UTC
hour
Renvoie l’heure de l’entrée
last_day
Renvoie le dernier jour du mois auquel la date appartient
minute
Renvoie la minute de l’entrée
month
Renvoie le mois de l’entrée
months_between
Nombre de mois entre
next_day
Renvoie le premier jour postérieur à l’entrée
quarter
Renvoie le trimestre de l’entrée
second
Renvoie la seconde de la chaîne
to_date
Convertit la chaîne en date. Note : la chaîne doit être au format yyyy-mm-ddTHH24:MM:SS.
to_timestamp
Convertit la chaîne en date et heure. Note : la chaîne doit être au format yyyy-mm-ddTHH24:MM:SS.
to_unix_timestamp
Convertit la chaîne en horodatage UNIX®
to_utc_timestamp
Convertit la chaîne en date et heure UTC
trunc
Tronque la date
unix_timestamp
Renvoie l’horodatage UNIX®
weekday
Jour de la semaine (0-6)
weekofyear
Renvoie la semaine de l’année pour une date donnée
year
Renvoie l’année de la chaîne

Tableaux arrays

Fonction
Description
array
Renvoie un tableau avec les éléments donnés
array_contains
Vérifie si le tableau contient la valeur
array_distinct
Supprime les valeurs en double du tableau
array_except
Renvoie un tableau contenant les éléments du premier tableau, mais pas ceux du second
array_intersect
Renvoie l’intersection des deux tableaux
array_join
Réunit deux tableaux ensemble
array_max
Renvoie la valeur maximale du tableau
array_min
Renvoie la valeur minimale du tableau
array_position
Renvoie la position de l’élément basée sur 1
array_remove
Supprime tous les éléments égaux à l’élément
array_repeat
Crée un tableau contenant le nombre de fois comptabilisées de la valeur.
array_sort
Trie le tableau
array_union
Rejoint le tableau, sans aucun doublon
arrays_zip
Combine les valeurs de tableaux donnés avec les valeurs de la collection d’origine à un index donné.
cardinality
Renvoyer la taille du tableau
element_at
Renvoyer l’élément en position
explode
Séparer les éléments du tableau en plusieurs lignes, à l’exception de la valeur nulle
explode_outer
Séparer les éléments du tableau en plusieurs lignes, y compris la valeur nulle
find_in_set
Renvoie la position de base 1 du tableau
flatten
Aplatit un tableau de tableaux
inline
Séparer le tableau des structures dans un tableau, à l’exclusion de la valeur nulle
inline_outer
Séparer le tableau des structures dans un tableau, y compris la valeur nulle
posexplode
Séparez les éléments d’un tableau en plusieurs lignes avec des positions, à l’exception de null
reverse
Inverser les éléments du tableau
shuffle
Renvoyer une permutation aléatoire du tableau
slice
Sous-définit un tableau
sort_array
Trier un tableau selon un ordre donné
zip_with
Fusionne les deux tableaux en un seul tableau, avant d’appliquer une fonction

Fonctions de diffusion du type de données datatype-casting

Fonction
Description
bigint
Remplacer le type de données par bigint
binary
Remplacer le type de données par binaire
boolean
Remplacer le type de données par booléen
type
Remplacer le type de données par le type spécifié
date
Remplacer le type de données par la date
decimal
Remplacer le type de données par un nombre décimal
double
Remplacer le type de données par un double
float
Transformer le type de données en type flottant
int
Remplacer le type de données par int
smallint
Remplacer le type de données par smallint
str_to_map
Créer un mappage à partir d’une chaîne
string
Remplacer le type de données par une chaîne
struct
Créer une structure
tinyint
Remplacer le type de données par tinyint

Fonctions de conversion et de formatage conversion

Fonction
Description
ascii
Renvoyer la valeur numérique (ASCII)
base64
Remplacer l’argument par une chaîne base64
bin
Remplacer l’argument par une valeur binaire
bit_length
Renvoyer la longueur en bits
char, chr
Renvoyer le caractère ASCII
char_length, character_length
Renvoyer la longueur de la chaîne
crc32
Renvoie la valeur de vérification de redondance cyclique
degrees
Convertir les radians en degrés
format_number
Modifier le format du nombre
from_json, get_json_object
Obtenir des données à partir de JSON
hash
Renvoyer la valeur de hachage
hex
Convertir l’argument en valeur hexadécimale
initcap
Modifie la chaîne en cas de titre.
lcase, lower
Modifie la chaîne pour tout mettre en minuscules
lpad
Complète le côté gauche d’une chaîne
map
Créer un mappage
map_from_arrays
Créer un mappage à partir d’un tableau
map_from_entries
Créer un mappage à partir d’un tableau de structures
md5
Renvoyer la valeur md5
rpad
Complète le côté droit d’une chaîne
rtrim
Supprime les espaces de fin
sha, sha1
Renvoyer la valeur SHA1
sha2
Renvoyer la valeur SHA2
soundex
Renvoyer le code soundex
stack
Séparer les valeurs en lignes
substr, substring
Renvoyer la sous-chaîne
to_json
Renvoie une chaîne JSON
translate
Remplacer les valeurs dans une chaîne
trim
Supprimer les caractères de début et de fin
ucase, upper
Modifier la chaîne pour qu’elle soit entièrement en majuscules
unbase64
Convertir la chaîne base64 en binaire
unhex
Convertir l’hexadécimal en binaire
uuid
Renvoyer un UUID

Évaluation des données data-evaluation

Fonction
Description
coalesce
Renvoyer le premier argument non nul
collect_list
Renvoyer une liste d’éléments non uniques
collect_set
Renvoyer un ensemble d’éléments uniques
concat
Concaténation
concat_ws
Concaténation avec séparateur
count
Renvoie le nombre total de lignes
decode
Décoder à l’aide d’un jeu de caractères
elt
Renvoyer la nre/ème entrée
encode
Coder à l’aide d’un jeu de caractères
first, first_value
Renvoyer la première valeur
grouping
Indique si une colonne est regroupée
grouping_id
Renvoie le niveau de regroupement
instr
Renvoie un index de base 1 d’occurrence de caractère
json_tuple
Renvoie un tuple à partir d’une entrée JSON
lag, lead
Renvoie la valeur avant le décalage
last, last_value
Renvoie la dernière valeur
left
Renvoie les n premiers caractères
length
Renvoie la longueur de la chaîne
levenshtein
Renvoie la distance de Levenshtein entre les chaînes
locate, position
Renvoie la position de la première occurrence d’une sous-chaîne
map_concat
Concaténer un mappage
map_keys
Renvoyer les clés d’un mappage
map_values
Renvoyer les valeurs d’un mappage
ntile
Diviser les lignes en partitions
nullif
Renvoie nulle si vraie
nvl
Renvoie la valeur si nulle
nvl2
Renvoie la valeur si non nulle
parse_url
Extrait une partie d’une URL
rank
Calcule le classement d’une valeur
regexp_extract
Extrait quelque chose qui correspond à l’expression régulière
regex_replace
Remplace quelque chose qui correspond à l’expression régulière
repeat
Renvoie une chaîne qui se répète
replace
Remplacer toutes les instances d’une chaîne
rollup
Créer une agrégation des données multidimensionnelle
row_number
Attribue un numéro de ligne unique
schema_of_json
Renvoie le schéma du JSON
sentences
Fractionne la chaîne en un tableau de mots
sequence
Génère un tableau d’éléments
shiftleft
Déplacement au niveau du bit vers la gauche sur entier signé
shiftright
Déplacement au niveau du bit vers la droite sur entier signé
shiftrightunsigned
Déplacement au niveau du bit vers la droite sur entier non signé
size
Renvoyer la taille du tableau
space
Renvoie une chaîne avec n des espaces
split
Fractionner la chaîne
substring_index
Renvoyer l’index de la sous-chaîne
window
Période
xpath
Analyser les nœuds XML
xpath_double, xpath_number
Analyser les nœuds XML pour rechercher un doublon
xpath_float
Analyser les nœuds XML pour rechercher une virgule flottante
xpath_int
Analyser les nœuds XML pour rechercher un entier
xpath_long
Analyser les nœuds XML pou rechercher un entier long
xpath_short
Analyser les nœuds XML pour rechercher un entier court
xpath_string
Analyser les nœuds XML pour rechercher une chaîne

Informations actuelles current-information

Fonction
Description
current_database
Renvoie la base de données actuelle
current_date
Renvoie la date actuelle
current_timestamp, now
Renvoie la date et l’heure actuelles

Fonctions d’ordre supérieur higher-order

Fonction
Description
transform
Transformer des éléments dans un tableau
exists
Vérifier si l’élément existe
filter
Filtrer le tableau d’entrée
aggregate
Appliquer un opérateur binaire à tous les éléments
recommendation-more-help
ccf2b369-4031-483f-af63-a93b5ae5e3fb