

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

# ScanFilter (warisan)
<a name="LegacyConditionalParameters.ScanFilter"></a>

**catatan**  
Kami menyarankan agar Anda menggunakan parameter ekspresi yang baru, bukan parameter warisan ini, jika memungkinkan. Untuk informasi selengkapnya, lihat [Menggunakan ekspresi di DynamoDB](Expressions.md). Untuk informasi spesifik tentang parameter baru sebagai pengganti untuk yang satu ini, [gunakan *FilterExpression*sebagai gantinya.](#FilterExpression2.instead). 

Dalam operasi `Scan`, parameter bersyarat warisan `ScanFilter` adalah syarat yang mengevaluasi hasil pemindaian dan hanya mengembalikan nilai-nilai yang diinginkan.

**catatan**  
Parameter ini tidak mendukung atribut jenis Daftar atau Peta.

Jika Anda menentukan lebih dari satu syarat di peta `ScanFilter`, secara default semua syarat harus bernilai true. Dengan kata lain, kondisinya ANDed bersama. (Anda dapat menggunakan parameter [ConditionalOperator (warisan)](LegacyConditionalParameters.ConditionalOperator.md) untuk syarat OR sebagai gantinya. Jika Anda melakukan ini, setidaknya salah satu syarat harus bernilai true, bukan semuanya.)

Setiap elemen `ScanFilter` terdiri dari nama atribut untuk dimodifikasi, beserta hal berikut:
+  `AttributeValueList` - Satu atau beberapa nilai untuk mengevaluasi atribut yang disediakan. Jumlah nilai dalam daftar tergantung pada operator yang ditentukan dalam `ComparisonOperator`.

  Untuk jenis Angka, perbandingan nilainya bersifat numerik.

  Perbandingan nilai string untuk lebih besar dari, sama dengan, atau kurang dari didasarkan pada pengodean biner UTF-8. Sebagai contoh, `a` lebih besar dari `A`, dan `a` lebih besar dari `B`.

  Untuk Biner, DynamoDB memperlakukan setiap byte data biner sebagai tidak bertanda ketika membandingkan nilai-nilai biner.

  Untuk informasi tentang menentukan jenis data di JSON, lihat [API tingkat rendah DynamoDB](Programming.LowLevelAPI.md).
+  `ComparisonOperator` - Sebuah pembanding untuk mengevaluasi atribut. Misalnya: sama dengan, lebih besar dari, dan kurang dari.

  Operator perbandingan berikut ini tersedia:

   `EQ | NE | LE | LT | GE | GT | NOT_NULL | NULL | CONTAINS | NOT_CONTAINS | BEGINS_WITH | IN | BETWEEN` 

## Gunakan *FilterExpression*sebagai gantinya - Contoh
<a name="FilterExpression2.instead"></a>

Misalkan Anda ingin memindai tabel *Musik* dan menerapkan syarat untuk item yang cocok. Anda dapat menggunakan permintaan `Scan` dengan parameter `ScanFilter`, seperti dalam contoh AWS CLI ini:

```
aws dynamodb scan \
    --table-name Music \
    --scan-filter '{
        "Genre":{
            "AttributeValueList":[ {"S":"Rock"} ],
            "ComparisonOperator": "EQ"
        }
    }'
```

Anda dapat menggunakan `FilterExpression` sebagai gantinya:

```
aws dynamodb scan \
    --table-name Music \
    --filter-expression 'Genre = :g' \
    --expression-attribute-values '{
        ":g": {"S":"Rock"} 
    }'
```