Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Penyaring
Saat menanyakan objek di DynamoDB menggunakan Scan operasi Query dan, Anda dapat secara opsional menentukan a filter yang mengevaluasi hasil dan mengembalikan hanya nilai yang diinginkan.
Properti filter dari Scan permintaan Query atau memiliki struktur sebagai berikut:
type DynamoDBExpression = { expression: string; expressionNames?: { [key: string]: string}; expressionValues?: { [key: string]: any}; };
Bidang didefinisikan sebagai berikut:
-
expression -
Ekspresi query. Untuk informasi selengkapnya tentang cara menulis ekspresi filter, lihat dokumentasi DynamoDB QueryFilter dan Dynam ScanFilter oDB. Bidang ini harus ditentukan.
-
expressionNames -
Substitusi untuk placeholder nama atribut ekspresi, dalam bentuk pasangan kunci-nilai. Kuncinya sesuai dengan placeholder nama yang digunakan di.
expressionNilai 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 -
expressionValues -
Substitusi untuk placeholder nilai atribut ekspresi, dalam bentuk pasangan kunci-nilai. Kunci sesuai dengan placeholder nilai yang digunakan di
expression, dan nilainya harus berupa nilai yang diketik. Untuk informasi selengkapnya tentang cara menentukan “nilai yang diketik”, lihat Sistem tipe (pemetaan permintaan). Ini harus ditentukan. Bidang ini opsional, dan hanya boleh diisi dengan substitusi untuk placeholder nilai atribut ekspresi yang digunakan di.expression
Contoh
Contoh berikut adalah bagian filter untuk permintaan, di mana entri yang diambil dari DynamoDB hanya dikembalikan jika judul dimulai dengan argumen. title
Di sini kita menggunakan util.transform.toDynamoDBFilterExpression untuk secara otomatis membuat filter dari objek:
const filter = util.transform.toDynamoDBFilterExpression({ title: { beginsWith: 'far away' }, }); const request = {}; request.filter = JSON.parse(filter);
Ini menghasilkan filter berikut:
{ "filter": { "expression": "(begins_with(#title,:title_beginsWith))", "expressionNames": { "#title": "title" }, "expressionValues": { ":title_beginsWith": { "S": "far away" } } } }