gpt4 book ai didi

amazon-dynamodb - 通过名为“时间戳”(保留字)的列查询Amazon DynamoDB

转载 作者:行者123 更新时间:2023-12-04 03:19:23 26 4
gpt4 key购买 nike

我有一个名为“ timestamp”的列的DynamoDB表,并且正在尝试按日期查询。我无法控制更改列名。

var params = {
TableName : 'REPORT_CARD',

KeyConditionExpression: "timestamp BETWEEN :startDate AND :endDate",
ExpressionAttributeValues: {
":startDate": ""+startDate,
":endDate": ""+endDate
}
}


我得到错误:


错误:ValidationException:无效的KeyConditionExpression:属性名称是保留的关键字;保留关键字:时间戳记


除了重命名“时间戳”列之外,还有其他解决方法吗?

最佳答案

首先,假设表'REPORT_CARD'的分区键定义为timestamp,则只能使用KeyConditionExpression中的等号运算符(即'=')通过分区键查询数据。

如果BETWEEN在表中定义为排序键,则可以使用timestamp

关于关键字错误,可以使用ExpressionAttributeNames提供属性名称timestamp。下面的例子:

var params = {
TableName: 'REPORT_CARD',

KeyConditionExpression: "parition_key_attr = :partition_val AND #timestamp BETWEEN :startDate AND :endDate",
ExpressionAttributeNames: { "#timestamp": "timestamp" },
ExpressionAttributeValues: {
':partition_val': "somevalue",
":startDate": startDate,
":endDate": endDate
}

关于amazon-dynamodb - 通过名为“时间戳”(保留字)的列查询Amazon DynamoDB,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42425146/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com