

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

# Proyeksi
<a name="aws-appsync-resolver-mapping-template-reference-dynamodb-projections"></a>

Saat membaca objek di DynamoDB menggunakan `TransactGetItems` operasi`GetItem`,,`Scan`,`Query`, dan`BatchGetItem`, Anda dapat secara opsional menentukan proyeksi yang mengidentifikasi atribut yang Anda inginkan. Proyeksi memiliki struktur berikut, yang mirip dengan filter: 

```
"projection" : {
    "expression" : "projection expression"
    "expressionNames" : {
        "#name" : "name",
    }
}
```

Bidang didefinisikan sebagai berikut:

**`expression`**   
Ekspresi proyeksi, yang merupakan string. Untuk mengambil atribut tunggal, tentukan namanya. Untuk beberapa atribut, nama harus berupa nilai yang dipisahkan koma. Untuk informasi selengkapnya tentang penulisan ekspresi proyeksi, lihat dokumentasi ekspresi [ proyeksi ](https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/Expressions.ProjectionExpressions.html) DynamoDB. Bidang ini wajib diisi. 

 **`expressionNames`**   
Substitusi untuk * placeholder * nama atribut ekspresi dalam bentuk pasangan kunci-nilai. Kuncinya sesuai dengan placeholder nama yang digunakan di. `expression` Nilai harus berupa string yang sesuai dengan nama atribut item di DynamoDB. Bidang ini opsional dan hanya boleh diisi dengan substitusi untuk placeholder nama atribut ekspresi yang digunakan di. `expression` Untuk informasi selengkapnya`expressionNames`, lihat dokumentasi [ DynamoDB. ](https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/Expressions.ExpressionAttributeNames.html) 

## Contoh 1
<a name="id25"></a>

Contoh berikut adalah bagian proyeksi untuk template pemetaan VTL di mana hanya atribut `author` dan `id` dikembalikan dari DynamoDB:

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

**Tip**  
Anda dapat mengakses set pemilihan permintaan GraphQL menggunakan [ $ SetList ](https://docs.aws.amazon.com/appsync/latest/devguide/resolver-context-reference.html#aws-appsync-resolver-context-reference-info) context.info.selection. Bidang ini memungkinkan Anda untuk membingkai ekspresi proyeksi Anda secara dinamis sesuai dengan kebutuhan Anda.

**catatan**  
Saat menggunakan ekspresi proyeksi dengan `Scan` operasi `Query` dan, nilai untuk `select` harus`SPECIFIC_ATTRIBUTES`. Untuk informasi selengkapnya, lihat dokumentasi [ DynamoDB. ](https://docs.aws.amazon.com/amazondynamodb/latest/APIReference/API_Query.html#DDB-Query-request-Select)