Fonction ARRAY_CONTAINS - 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_CONTAINS

Vérifie si le tableau contient la valeur donnée et renvoie TRUE s'il est trouvé.

Syntaxe

ARRAY_CONTAINS( array, value [, null_match] )

Arguments

réseau

Expression SUPER qui indique le tableau dans lequel effectuer la recherche.

valeur

Valeur qui indique l'élément à rechercher.

null_match

Une valeur booléenne qui indique comment les valeurs NULL sont gérées :

  • null_match = FALSE: Searching for NULL returns NULL. If the array contains NULL values and no match is found for a non-NULL search value, returns NULL.
  • null_match = TRUE: NULLs are treated as valid, searchable elements. If the array contains NULL values and no match is found for a non-NULL search value, it returns FALSE.

La valeur par défaut est TRUE.

La gestion des valeurs NULL par défaut peut également être spécifiée par l'option de configuration :

-- same as null_match = TRUE SET default_array_search_null_handling to TRUE;

Type de retour

La fonction ARRAY_CONTAINS renvoie un type BOOLEAN.

Exemple

Les exemples suivants illustrent la fonction ARRAY_CONTAINS.

SELECT ARRAY_CONTAINS(ARRAY('red', 'green'), 'red'); array_contains ---------------- t (1 row)

Les exemples suivants montrent le comportement de la fonction lorsque null_match est défini sur TRUE.

SET default_array_search_null_handling to TRUE; -- NULL search is enabled SELECT ARRAY_CONTAINS(ARRAY('red', NULL, 'green'), NULL); array_contains ---------------- t (1 row) -- The array can contain NULLs SELECT ARRAY_CONTAINS(ARRAY('red', NULL, 'green'), 'blue', TRUE); array_contains ---------------- f (1 row)

Les exemples suivants montrent le comportement de la fonction lorsque null_match est défini sur FALSE. Notez que la spécification du comportement null_match dans la fonction remplacera le paramètre de configuration par défaut.

-- same as null_match = TRUE SET default_array_search_null_handling to TRUE; -- NULL search is disabled. The default behavior is overridden SELECT ARRAY_CONTAINS(ARRAY('red', 'green'), NULL, FALSE); array_contains ---------------- (1 row) -- same as null_match = FALSE SET default_array_search_null_handling to FALSE; -- The array contains NULL and a match is found SELECT ARRAY_CONTAINS(ARRAY('red', NULL, 'green'), 'green'); array_contains ---------------- t (1 row) -- The array contains NULL but no match is found SELECT ARRAY_CONTAINS(ARRAY('red', NULL, 'green'), 'blue'); array_contains ---------------- (1 row)

Consultez aussi