

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.

# Projections
<a name="js-aws-appsync-resolver-reference-dynamodb-projections"></a>

Lorsque vous lisez des objets dans DynamoDB à `GetItem` l'aide des opérations `Scan``Query`,`BatchGetItem`,, `TransactGetItems` et, vous pouvez éventuellement spécifier une projection qui identifie les attributs souhaités. La structure de la propriété de projection est la suivante, similaire à celle des filtres : 

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

Les champs sont définis comme suit :

** `expression` **  
L'expression de projection, qui est une chaîne. Pour récupérer un seul attribut, spécifiez son nom. Pour les attributs multiples, les noms doivent être des valeurs séparées par des virgules. Pour plus d'informations sur l'écriture d'expressions de projection, consultez la documentation des expressions de projection [DynamoDB](https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/Expressions.ProjectionExpressions.html). Ce champ est obligatoire. 

** `expressionNames` **  
Les substitutions aux espaces réservés aux *noms* d'attributs d'expression sous forme de paires clé-valeur. La clé correspond à un espace réservé de nom utilisé dans le `expression`. La valeur doit être une chaîne correspondant au nom d'attribut de l'élément dans DynamoDB. Ce champ est facultatif et ne doit être rempli qu'avec des substitutions pour les espaces réservés aux noms d'attributs d'expression utilisés dans le. `expression` Pour plus d'informations`expressionNames`, consultez la documentation [DynamoDB](https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/Expressions.ExpressionAttributeNames.html). 

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

L'exemple suivant est une section de projection pour une JavaScript fonction dans laquelle seuls les attributs `author` et B `id` sont renvoyés par DynamoDB :

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

**Astuce**  
Vous pouvez accéder à votre ensemble de sélection de requêtes GraphQL à l'aide de. [selectionSetList](https://docs.aws.amazon.com/appsync/latest/devguide/resolver-context-reference-js.html#aws-appsync-resolver-context-reference-info-js) Ce champ vous permet de cadrer votre expression de projection de manière dynamique en fonction de vos besoins.

**Note**  
Lorsque vous utilisez des expressions de projection avec les `Scan` opérations `Query` et, la valeur de `select` doit être`SPECIFIC_ATTRIBUTES`. Pour plus d'informations, consultez la documentation [DynamoDB](https://docs.aws.amazon.com/amazondynamodb/latest/APIReference/API_Query.html#DDB-Query-request-Select).