Amazon Redshift non supporterà più l'uso delle UDF Python dopo il 30 giugno 2026. Inizieremo ad applicarlo per fasi. Per ulteriori informazioni sulla fine del ciclo di vita e sulle opzioni di migrazione di Python, consulta il post del
Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.
Funzione ARRAY_CONTAINS
Verifica se l'array contiene il valore dato e restituisce TRUE se trovato.
Sintassi
ARRAY_CONTAINS( array, value [, null_match] )
Arguments (Argomenti)
- matrice
-
Un'espressione SUPER che specifica l'array in cui effettuare la ricerca.
- value
-
Un valore che specifica l'elemento da cercare.
- null_match
-
Un valore booleano che specifica come vengono gestiti i valori NULL:
null_match = FALSE: la ricerca di NULL restituisce NULL. Se l'array contiene valori NULL e non viene trovata alcuna corrispondenza per un valore di ricerca diverso da NULL, restituisce NULL.
null_match = TRUE: i NULL vengono trattati come elementi validi e ricercabili. Se l'array contiene valori NULL e non viene trovata alcuna corrispondenza per un valore di ricerca diverso da NULL, restituisce FALSE.
Il valore predefinito è TRUE.
La gestione predefinita dei NULL può essere specificata anche dall'opzione di configurazione:
-- same as null_match = TRUE SET default_array_search_null_handling to TRUE;
Tipo restituito
La funzione ARRAY_CONTAINS restituisce un tipo BOOLEAN.
Esempio
Gli esempi seguenti mostrano la funzione ARRAY_CONTAINS.
SELECT ARRAY_CONTAINS(ARRAY('red', 'green'), 'red'); array_contains ---------------- t (1 row)
Gli esempi seguenti mostrano il comportamento della funzione con null_match impostato su 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)
Gli esempi seguenti mostrano il comportamento della funzione con null_match impostato su FALSE. Nota che la specifica del comportamento null_match nella funzione sovrascriverà l'impostazione di configurazione predefinita.
-- 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)