DynamoDB API过滤扫描未返回结果



因此,我正在通过Powershell使用AWS CLI对DynamoDB表运行约500条记录的扫描,因为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_2foobar属性具有相同值的项:

{
  "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`"}}"

:(

相关内容

  • 没有找到相关文章

最新更新