ScanFilter (warisan) - Amazon DynamoDB

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

ScanFilter (warisan)

catatan

Kami menyarankan agar Anda menggunakan parameter ekspresi yang baru, bukan parameter warisan ini, jika memungkinkan. Untuk informasi selengkapnya, lihat Menggunakan ekspresi di DynamoDB. Untuk informasi spesifik tentang parameter baru sebagai pengganti untuk yang satu ini, gunakan FilterExpressionsebagai gantinya..

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) 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, atau kurang dari didasarkan pada UTF -8 pengkodean biner. 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 tipe data diJSON, lihatDynamoDB tingkat rendah API.

  • 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 FilterExpressionsebagai gantinya - Contoh

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"} }'