Mar*_*son 10 amazon-dynamodb aws-cli dynamo-local
有人可以告诉我一个有效的关键条件表达式.我试图在一个名为MyKeyTable的简单表上运行查询.它有两个"列",即Id和AnotherNumberThatICareAbout,类型为Long.
我想看看我投入的所有价值观.所以我尝试过:
aws dynamodb query --select ALL_ATTRIBUTES --table-name MyKeyTable
--endpoint http://localhost:8000
--key-condition-expression "WHAT DO I PUT IN HERE?"
Run Code Online (Sandbox Code Playgroud)
我需要放入什么哈希?文档对这个imho有点蹩脚.任何帮助表示感谢,即使它只是一个好文档的链接.
这是一个只能使用命令行的方法,没有中间文件.
首先,使用值占位符来构造关键条件表达式,例如,
--key-condition-expression "Id = :idValue"
Run Code Online (Sandbox Code Playgroud)
(不要忘记占位符的冒号前缀!)
接下来,构造一个expression-attribute-values参数.请注意,它需要JSON格式.我总是试图忘记的棘手的一点是你不能只为一个数字插入42或为字符串插入"foo".您必须告诉DynamoDb 类型和值.参考AWS文档,了解如何格式化值规范的完整细分,如果需要,可能会非常复杂.
对于Windows,您可以通过将它们加倍来转义引号,例如,
--expression-attribute-values "{"":idValue"":{""N"":""42""}}"
Run Code Online (Sandbox Code Playgroud)
对于MacOS/Linux,JSON需要单引号:
--expression-attribute-values '{":idValue":{"N":"42"}}'
Run Code Online (Sandbox Code Playgroud)
创建一个包含密钥的文件:test.json
{
"yourHashKeyName": {"S": "abc"},
"YourRangeKey": {"S": "xyz"} //optional
}
Run Code Online (Sandbox Code Playgroud)
跑步
aws dynamodb query --table-name "your table name" --key-conditions file://test.json
Run Code Online (Sandbox Code Playgroud)
请参阅:http://docs.aws.amazon.com/cli/latest/reference/dynamodb/query.html
用于扫描桌子
aws dynamodb scan --table-name "you table name"
Run Code Online (Sandbox Code Playgroud)
当我们扫描整个表时不需要传递任何键(注意:它将获得最多 1MB 的数据)
请参阅:http ://docs.aws.amazon.com/cli/latest/reference/dynamodb/scan.html
| 归档时间: |
|
| 查看次数: |
6737 次 |
| 最近记录: |