Amazon Redshift ne prendra plus en charge la création de nouveaux UDFs Python à partir du patch 198. Les fonctions Python définies par l’utilisateur existantes continueront de fonctionner normalement jusqu’au 30 juin 2026. Pour plus d’informations, consultez le billet de blog
Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.
Fonction ARRAY_INTERSECTION
Renvoie un nouveau tableau contenant uniquement les éléments qui existent dans les deux tableaux d'entrée. La fonction est NULL-safe, ce qui signifie qu'elle traite les valeurs NULL. Les objets sont traités comme des objets connus. L'ordre des éléments dans le résultat n'est pas garanti.
Syntaxe
ARRAY_INTERSECTION( array1, array2 [, distinct] )
Arguments
- tableau 1
-
Expression SUPER qui spécifie un tableau.
- tableau 2
-
Expression SUPER qui spécifie un tableau.
- distinct
-
Une valeur booléenne qui indique s'il faut renvoyer uniquement des éléments distincts :
distinct = FALSE : la Multi-set sémantique s'applique. Les éléments dupliqués sont préservés et la fréquence de chaque élément du résultat est égale au minimum de ses fréquences dans les deux tableaux d'entrée.
distinct = TRUE : la sémantique définie s'applique. Seuls les éléments uniques communs aux deux tableaux sont renvoyés, sans doublons.
La valeur par défaut est FALSE.
Type de retour
La fonction ARRAY_INTERSECTION renvoie un type SUPER.
Exemple
Les exemples suivants illustrent la fonction ARRAY_INTERSECTION.
SELECT ARRAY_INTERSECTION(ARRAY('a','b','c'), ARRAY('b','c','d')); array_intersection -------------------- ["b","c"] (1 row)
Multi-set sémantique :
SELECT ARRAY_INTERSECTION(ARRAY('a','b','b'), ARRAY('b','b','b')); array_intersection -------------------- ["b","b"] (1 row)
Sémantique des paramètres :
SELECT ARRAY_INTERSECTION(ARRAY('a','b','b'), ARRAY('b','b','b'), TRUE); array_intersection -------------------- ["b"] (1 row)
Les valeurs NULL sont traitées comme des objets connus.
SELECT ARRAY_INTERSECTION(ARRAY('a',NULL), ARRAY('b',NULL)); array_intersection -------------------- [null] (1 row)