

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

# Menggunakan ekspresi proyeksi di DynamoDB
<a name="Expressions.ProjectionExpressions"></a>

Untuk membaca data dari tabel, Anda menggunakan operasi seperti `GetItem`, `Query`, atau `Scan`. Amazon DynamoDB mengembalikan semua atribut item secara default. Untuk mendapatkan beberapa saja, bukan semua atribut, gunakan ekspresi proyeksi.

*Ekspresi proyeksi* adalah string yang mengidentifikasi atribut yang Anda inginkan. Untuk mengambil atribut tunggal, tentukan namanya. Untuk beberapa atribut, nama harus dipisahkan koma.

Berikut adalah beberapa contoh ekspresi proyeksi, berdasarkan item `ProductCatalog` dari [Mengacu pada atribut item saat menggunakan ekspresi di DynamoDB](Expressions.Attributes.md):
+ Atribut tingkat atas tunggal.

  `Title `
+ Tiga atribut tingkat atas. DynamoDB mengambil seluruh set `Color`.

  `Title, Price, Color`
+ Empat atribut tingkat atas. DynamoDB mengembalikan seluruh konten `RelatedItems` dan `ProductReviews`.

  `Title, Description, RelatedItems, ProductReviews`

**catatan**  
Ekspresi proyeksi tidak berpengaruh pada konsumsi throughput yang disediakan. DynamoDB menentukan unit kapasitas yang dikonsumsi berdasarkan ukuran item, bukan jumlah data yang dikembalikan ke aplikasi.

**Kata-kata yang dicadangkan dan karakter khusus**

DynamoDB telah memesan kata-kata dan karakter khusus. DynamoDB memungkinkan Anda untuk menggunakan kata-kata yang dicadangkan ini dan karakter khusus untuk nama, tetapi kami menyarankan Anda menghindari melakukannya karena Anda harus menggunakan alias untuk mereka setiap kali Anda menggunakan nama-nama ini dalam sebuah ekspresi. Untuk daftar lengkap, lihat [Kata-kata penggunaan khusus di DynamoDB](ReservedWords.md).

Anda harus menggunakan nama atribut ekspresi sebagai pengganti nama sebenarnya jika: 
+ Nama atribut ada di daftar kata-kata yang dicadangkan di DynamoDB.
+ Nama atribut tidak memenuhi persyaratan bahwa karakter pertama adalah `a-z` atau `A-Z` dan bahwa karakter kedua (jika ada) adalah`a-Z`,`A-Z`, atau`0-9`.
+ Nama atribut berisi **\$1** (hash) atau**:** (titik dua).

 AWS CLI Contoh berikut menunjukkan bagaimana menggunakan ekspresi proyeksi dengan `GetItem` operasi. Ekspresi proyeksi ini mengambil atribut skalar tingkat atas (`Description`), elemen pertama dalam daftar (`RelatedItems[0]`), dan daftar bersarang dalam peta (`ProductReviews.FiveStar`).

```
aws dynamodb get-item \
    --table-name ProductCatalog \
    --key '"Id": { "N": "123" } \
    --projection-expression "Description, RelatedItems[0], ProductReviews.FiveStar"
```

JSON berikut akan dikembalikan untuk contoh ini.

```
{
    "Item": {
        "Description": {
            "S": "123 description"
        },
        "ProductReviews": {
            "M": {
                "FiveStar": {
                    "L": [
                        {
                            "S": "Excellent! Can't recommend it highly enough! Buy it!"
                        },
                        {
                            "S": "Do yourself a favor and buy this."
                        }
                    ]
                }
            }
        },
        "RelatedItems": {
            "L": [
                {
                    "N": "341"
                }
            ]
        }
    }
}
```