

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á.

# Projeções
<a name="js-aws-appsync-resolver-reference-dynamodb-projections"></a>

Ao ler objetos no DynamoDB usando as operações `GetItem`, `Scan`, `Query`, `BatchGetItem` e `TransactGetItems`, você pode, opcionalmente, especificar uma projeção que identifique os atributos desejados. A propriedade da projeção tem a seguinte estrutura, que é semelhante aos filtros: 

```
type DynamoDBExpression = {
  expression: string;
  expressionNames?: { [key: string]: string}
};
```

Os campos são definidos da seguinte forma:

** `expression` **  
A expressão de projeção, que é uma string. Para recuperar um único atributo, especifique o seu nome. Para vários atributos, os nomes devem ser valores separados por vírgulas. Para obter mais informações sobre como escrever expressões de projeção, consulte a documentação das [expressões de projeção do DynamoDB](https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/Expressions.ProjectionExpressions.html). Este campo é obrigatório. 

** `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 em `expression`. Para obter mais informações sobre `expressionNames`, consulte a [documentação do DynamoDB](https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/Expressions.ExpressionAttributeNames.html). 

## Exemplo 1
<a name="js-id22"></a>

O exemplo a seguir é uma seção de projeção de uma JavaScript função na qual somente os atributos `author` e s `id` são retornados do DynamoDB:

```
projection : {
    expression : "#author, id",
    expressionNames : {
        "#author" : "author"
    }
}
```

**dica**  
Você pode acessar seu conjunto de seleção de solicitações do GraphQL usando. [selectionSetList](https://docs.aws.amazon.com/appsync/latest/devguide/resolver-context-reference-js.html#aws-appsync-resolver-context-reference-info-js) Esse campo permite que você ajuste sua expressão de projeção dinamicamente de acordo com seus requisitos.

**nota**  
Ao usar expressões de projeção com as operações `Scan` e `Query`, o valor de `select` deve ser `SPECIFIC_ATTRIBUTES`. Para obter mais informações, consulte a [documentação do DynamoDB](https://docs.aws.amazon.com/amazondynamodb/latest/APIReference/API_Query.html#DDB-Query-request-Select).