[英]DynamoDB API filtered scan returns no results
因此,我正在使用AWS CLI通过Powershell对包含约500条记录的DynamoDB表进行扫描,因为AWS Powershell工具不支持DDB查询/扫描操作。 我可以运行没有过滤器的命令并获取我的所有项目:
& aws dynamodb scan --table-name "$table_name" --projection-expression "$item_key"
这将返回$ item_key的所有500多个值。
当我尝试过滤扫描时出现问题:
& aws dynamodb scan --table-name "$table_name" --projection-expression "$item_key" --filter-expression "item_key_2 = `"$item_value`""
即使表中有多个值与$ item_value匹配,也会返回0和没有项的计数。
我在这里错过了什么/做错了什么?
我们假设$item_value
扩展到foobar
。 过滤器表达式要查找的是item_key_2
和foobar
属性具有相同值的项:
{
"item_key": "...",
"item_key_2": "It's a match!",
"foobar": "It's a match!"
}
要将item_key_2与文字值进行比较,您需要执行以下操作:
aws dynamodb scan \
--table-name "$table_name" \
--filter-expression "item_key_2 = :value" \
--expression-attribute-values "{`":value`":{`"S`":`"$item_value`"}}"
:(
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.