Support partiQL dans les expressions de filtre de ligne - AWS Lake Formation

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.

Support partiQL dans les expressions de filtre de ligne

Vous pouvez créer des expressions de filtre de ligne à l'aide d'un sous-ensemble de types de données, d'opérateurs et d'agrégations PartiQL. Lake Formation n'autorise aucune fonction PartiQL standard ou définie par l'utilisateur dans l'expression du filtre. Vous pouvez utiliser des opérateurs de comparaison pour comparer des colonnes à des constantes (par exemple,views >= 10000), mais vous ne pouvez pas comparer des colonnes à d'autres colonnes.

Une expression de filtre Row peut être une expression simple ou une expression composite. La longueur totale de l'expression doit être inférieure à 2 048 caractères.

Expression simple

Une expression simple aura le format suivant : <column name > <comparison operator ><value >

  • Nom de colonne

    Il peut s'agir d'une colonne de données de niveau supérieur, d'une colonne de partition ou d'une colonne imbriquée présente dans le schéma de table et doit appartenir à la Types de données pris en charge liste ci-dessous.

  • Opérateur de comparaison

    Les opérateurs pris en charge sont les suivants : =, >, <, >=, <=, <>,!=, BETWEEN, IN, LIKE, NOT, IS [NOT] NULL

  • Toutes les comparaisons de chaînes et les correspondances de LIKE modèles distinguent les majuscules et minuscules. Vous ne pouvez pas utiliser l'opérateur IS [NOT] NULL sur les colonnes de partition.

  • Valeur de colonne

    La valeur de colonne doit correspondre au type de données du nom de colonne.

Expression composite

Une expression composite sera au format :( <simple expression >) <AND/OR >(<simple expression >). Les expressions composites peuvent être combinées ultérieurement à l'aide d'opérateurs logiquesAND/OR.

Types de données pris en charge

Les filtres de ligne qui font référence à une AWS Glue Data Catalog table contenant un type de données non pris en charge provoqueront une erreur. Les types de données pris en charge pour les colonnes de table et les constantes sont les suivants, qui sont mappés aux types de Amazon Redshift données :

  • STRING, CHAR, VARCHAR

  • INT, LONG, BIGINT, FLOAT, DECIMAL, DOUBLE

  • BOOLEAN

  • STRUCT

Pour plus d'informations sur les types de données dans Amazon Redshift, consultez la section Types de données dans le guide du développeur de base de données Amazon Redshift.

Expressions de filtre de ligne

Voici des exemples d'expressions de filtre de ligne valides pour une table comportant des colonnes : country (String), id (Long), year (partition column of type Integer), month (partition column of type Integer)

  • year > 2010 and country != 'US'

  • (year > 2010 and country = 'US') or (month < 8 and id > 23)

  • (country between 'Z' and 'U') and (year = 2018)

  • (country like '%ited%') and (year > 2000)

Voici des exemples valides d'expressions de filtre de ligne pour une table comportant des colonnes imbriquées : year > 2010 and customer.customerId <> 1

Les champs imbriqués sous les colonnes de partition ne doivent pas être référencés lors de la définition d'expressions imbriquées au niveau des lignes.

Les constantes de chaîne doivent être placées entre guillemets simples.

Mots-clés réservés

Si votre expression de filtre de ligne contient des mots clés partiQL, vous recevrez une erreur d'analyse car les noms des colonnes peuvent entrer en conflit avec les mots clés. Dans ce cas, évitez les noms de colonnes en utilisant des guillemets doubles. Voici quelques exemples de mots clés réservés : « premier », « dernier », « asc », « manquant ». Consultez la spécification partiQL pour obtenir la liste des mots clés réservés.

Référence PartiQL

Pour plus d'informations sur PartiQL, consultez. https://partiql.org/