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á.
Ao consultar objetos no DynamoDB usando as operações Query
e Scan
, opcionalmente, você pode especificar um filter
que avalia os resultados e retorna apenas os valores desejados.
A seção de mapeamento do filtro de um documento de mapeamento Query
ou Scan
possui a seguinte estrutura:
"filter" : {
"expression" : "filter expression"
"expressionNames" : {
"#name" : "name",
},
"expressionValues" : {
":value" : ... typed value
},
}
Os campos são definidos da seguinte forma:
-
expression
-
A expressão da consulta. Para obter mais informações sobre como escrever expressões de filtro, consulte a documentação do DynamoDB e ScanFilter do QueryFilter DynamoDB. Esse campo deve ser especificado.
-
expressionNames
-
As substituições para espaços reservados de nome do atributo da expressão, na forma de pares chave-valor. A chave corresponde a um espaço reservado de nome usado na
expression
. O valor deve ser uma string que corresponde ao nome de atributo do item no DynamoDB. Esse campo é opcional e deve ser preenchido apenas por substituições para espaços reservados de nome do atributo da expressão usados emexpression
. -
expressionValues
-
As substituições para espaços reservados de valor do atributo da expressão, na forma de pares chave-valor. A chave corresponde a um espaço reservado de valor usado na
expression
e o valor deve ser um valor digitado. Para obter mais informações sobre como especificar um "valor digitado", consulte Sistema de tipo (Mapeamento de solicitação). Isso deve ser especificado. Esse campo é opcional e deve ser preenchido apenas por substituições para espaços reservados de valor do atributo da expressão usados emexpression
.
Exemplo
Veja a seguir uma seção de filtro para um modelo de mapeamento, onde as entradas recuperadas do DynamoDB só são retornadas se o título começa com o argumento title
.
"filter" : {
"expression" : "begins_with(#title, :title)",
"expressionNames" : {
"#title" : "title"
},
"expressionValues" : {
":title" : $util.dynamodb.toDynamoDBJson($context.arguments.title)
}
}