Suporte partiQL em expressões de filtro de linha - AWS Lake Formation

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

Suporte partiQL em expressões de filtro de linha

Você pode estruturar expressões de filtro de linha usando um subconjunto de tipos de dados, operadores e agregações do PartiQL. O Lake Formation não permite nenhum perfil PartiQL padrão ou definida pelo usuário na expressão de filtro. Você pode usar operadores de comparação para comparar colunas com constantes (por exemplo,views >= 10000), mas não pode comparar colunas com outras colunas.

Uma expressão de filtro de linha pode ser uma expressão simples ou uma expressão composta. O tamanho total da expressão deve ter menos de 2048 caracteres.

Expressões simples

Uma expressão simples terá o formato: <column name > <comparison operator ><value >

  • Nome da coluna

    Deve ser uma coluna de dados de nível superior, uma coluna de partição ou uma coluna aninhada presente no esquema da tabela e deve pertencer aos Tipos de dados compatíveis listados abaixo.

  • Operador de comparação

    Os seguintes operadores são compatíveis: =, >, <, >=, <=, <>,!=, BETWEEN, IN, LIKE, NOT, IS [NOT] NULL

  • Todas as comparações de strings e correspondências de padrão LIKE diferenciam maiúsculas e minúsculas. Não é possível usar o operador IS [NOT] NULL em colunas de partição.

  • Valor da coluna

    O valor da coluna deve corresponder ao tipo de dados do nome da coluna.

Expressão composta

Uma expressão composta terá o formato: ( <simple expression >) <AND/OR >(<simple expression >). Expressões compostas podem ser combinadas ainda mais usando operadores lógicos AND/OR.

Tipos de dados compatíveis

Filtros de linha que se referem a uma tabela AWS Glue Data Catalog que contém tipos de dados incompatíveis resultarão em um erro. A seguir estão os tipos de dados compatíveis com colunas e constantes da tabela, que são mapeados para tipos de dados: Amazon Redshift

  • STRING, CHAR, VARCHAR

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

  • BOOLEAN

  • STRUCT

Para obter mais informações sobre tipos de dados no Amazon Redshift, consulte Tipos de dados no Guia do desenvolvedor de banco de dados do Amazon Redshift.

Expressões de filtro em linha

Veja a seguir exemplos de expressões de filtro de linha válidas para uma tabela com colunas: 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)

Veja a seguir exemplos de expressões de filtro de linha válidas para uma tabela com colunas aninhadas: year > 2010 and customer.customerId <> 1

Os campos aninhados em colunas de partição não devem ser referenciados ao definir expressões aninhadas em nível de linha.

As constantes de string devem estar entre aspas simples.

Palavras-chave reservadas

Se sua expressão de filtro de linha contiver palavras-chave partiQL, você receberá um erro de análise, pois os nomes das colunas podem entrar em conflito com as palavras-chave. Quando isso acontecer, substitua os nomes das colunas por aspas duplas. Alguns exemplos de palavras-chave reservadas são “primeiro”, “último”, “asc”, “ausente”. Consulte a especificação do PartiQL para obter uma lista de palavras-chave reservadas.

Referência do PartiQL

Para obter mais informações sobre o PartiQL, consulte https://partiql.org/.