我试图从手动创建的虚拟表中进行查询。
表名称:myTable
主分区键:id(字符串)
主排序键:ts(Number)
该表包含以下项目:
id | ts |湿度|温度
outTopic|1233|50|30
主题之外| 1234|
主题外| 1235 | 52 | 32
我可以通过AWS管理控制台查询表,但不使用AWS Javascript SDK。
问题:我只想查询时间戳值小于等于1234的项目。
但当我使用Node运行代码时。js公司:
let docClient = new AWS.DynamoDB.DocumentClient();
var params_query = {
TableName: "myTable",
KeyConditionExpression: '#id = :iottopic and #ts <= :time_val',
ExpressionAttributeNames: {
"#id": "id",
"#ts": "ts"
},
ExpressionAttributeValues: {
":iottopic": {"S": "outTopic"},
":time_val": {"N": "1234"}
}
};
docClient.query(params_query, function (err, data) {
if (err) {
console.log("error - " + JSON.stringify(err, null, 2));
}
else {
console.log("success - " + JSON.stringify(data, null, 2));
}
})
我得到以下错误:
KeyConditionExpression无效:运算符或函数的操作数类型不正确;操作员或html" target="_blank">功能:
当我使用AWS CLI运行等效命令时,我得到了预期的两个项目:
aws dynamodb query \
--table-name myTable \
--key-condition-expression "id = :iottopic AND ts <= :time_val" \
--expression-attribute-values \
'{":iottopic": {"S": "outTopic" },":time_val": {"N": "1234"}}'
表达式属性值的参数应该是这样的:
js prettyprint-override">ExpressionAttributeValues: {
":iottopic": "outTopic",
":time_val": 1234
}
省略属性类型。
我有一个用例可以将begins_with应用于AWS Dynamodb表的主排序键, 我可以从AWS控制台使用begins_with键条件查询表, 我希望使用AWS Javascript SDK实现同样的功能。 我的表中有以下字段- 1。user_id(主分区键) 2。user_relation(主排序键) 我尝试了下面的代码- 错误- 引用- https://docs.aws.amazon.co
我有一个AWS DynamoDb表, 我有user_id作为索引或GSI(user_id-index), 还有product_type作为索引或GSI(prod_type-index). 我试图使用KeyConditionExpression来查询DynamoDb表, 但是我得到了一个- 引用- Dynamodb查询错误-不支持查询键条件 https://docs.aws.amazon.com/a
我试图使用节点JS AWS-SDK从DynamoDB表中获取项。函数运行良好,但更难使用。 我使用官方文档:http://docs.aws.amazon.com/awsjavascriptsdk/latest/aws/dynamodb/client.html#batchgetitem-property 在该语法示例中,必须提供表名。
我有一个AWS DynamoDb购物车表,其项目结构如下- - 该表将作为主键, 作为索引或GSI, 作为索引或GSI。 我希望能够查询购物车表, 查找的项目。 我不知道这是否意味着查询- 我知道AWS DynamoDb表不能同时使用多个索引进行查询, 我遇到了以下问题,它有一个类似的用例,答案是建议创建一个复合键, 使用多个本地辅助索引DynamoDb进行查询 这是否意味着在将新项放入表中时,
我需要创建dynamoDB表,然后根据开发、阶段和生产对它们进行分组。我在AWS控制台中找到了一个创建表组的选项,我们可以将表添加到组中。但是我需要使用AWS SDK将表添加到一个特定的组中,我检查了AWS DynamoDB SDK类列表我没有找到任何选项。
我有一个react应用程序,我正在使用AWS amplify。我的问题是,当我从DynamoDB查询数据时,通过AWS AppSync的正确方式是正确的,然后我是否有一个lambda函数来查询数据库,还是AppSync只是这样做?这样做的正确途径是什么?它会反应吗-