Amazon Redshift ne prendra plus en charge la création de nouveaux Python à UDFs partir du patch 198. UDFs Le Python existant continuera de fonctionner 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 sûre pour les valeurs NULL, ce qui signifie qu'elle traite NULLs les objets comme des objets connus. L'ordre des éléments dans le résultat n'est pas garanti.
Syntaxe
ARRAY_INTERSECTION( array1, array2 [, distinct] )
Arguments
- matrice1
-
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 sémantique multi-ensembles 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)
Sémantique multi-ensembles :
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)
NULLs sont traités comme des objets connus.
SELECT ARRAY_INTERSECTION(ARRAY('a',NULL), ARRAY('b',NULL)); array_intersection -------------------- [null] (1 row)