web-dev-qa-db-fra.com

Le tableau Presto contient un élément qui aime un motif

Par exemple, une colonne de ma table est un tableau, je veux vérifier si cette colonne contient un élément qui contient une sous-chaîne "refusée" (donc des éléments comme "refusé à 12h00", "refusé par l'administrateur" compteront tous, Je crois que je devrai utiliser "j'aime" pour identifier le motif). Comment écrire sql pour cela?

4
daydayup

Utilisez les fonctions de tableau de Presto :

  • filter(), qui retourne des éléments qui satisfont la condition donnée
  • cardinality(), qui retourne la taille d'un tableau:

Comme ça:

where cardinality(filter(myArray, x -> x like '%denied%')) > 0
7
Bohemian

Voir l'opérateur de tableau docs here

contains(array_column,'denied')

0
twoy