Fonction ARRAY_EXCEPT - Amazon Redshift

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_EXCEPT

Renvoie la différence entre deux tableaux en conservant les éléments du premier tableau qui n'existent pas dans le second tableau. La fonction est sûre pour les valeurs NULL, ce qui signifie qu'elle traite NULLs les objets comme des objets connus.

Syntaxe

ARRAY_EXCEPT( array1, array2 [, distinct] )

Arguments

tableau 1

Expression SUPER qui spécifie le premier tableau.

tableau 2

Expression SUPER qui spécifie le deuxième tableau.

distinct

Une valeur booléenne qui indique s'il faut renvoyer uniquement des éléments distincts :

  • distinct = FALSE: Multi-set semantics apply. Each occurrence of an element in the first array is matched against occurrences in the second array. If the first array has more occurrences of an element than the second array, the extra occurrences are preserved in the result.
  • distinct = TRUE: Set semantics apply. Both arrays are treated as sets, ignoring duplicate elements. Elements from the first array are removed if they exist anywhere in the second array, regardless of occurrence count.

La valeur par défaut est FALSE.

Type de retour

La fonction ARRAY_EXCEPT renvoie un type SUPER.

Exemple

Les exemples suivants illustrent la fonction ARRAY_EXCEPT.

SELECT ARRAY_EXCEPT(ARRAY('a','b','c'), ARRAY('b','c','d')); array_except -------------- ["a"] (1 row)

Sémantique multi-ensembles :

SELECT ARRAY_EXCEPT(ARRAY('b','b','b','b'), ARRAY('b','b')); array_except -------------- ["b","b"] (1 row)

Sémantique des paramètres :

SELECT ARRAY_EXCEPT(ARRAY('a','b','b'), ARRAY('b'), TRUE); array_except -------------- ["a"] (1 row)

NULLs sont traités comme des objets connus.

SELECT ARRAY_EXCEPT(ARRAY('a',NULL), ARRAY(NULL)); array_except -------------- ["a"] (1 row)

Consultez aussi