我是Dynamodb的新手, 我的表名是“user”,其中有两列,一个是“time”,另一个是“cost”。 我想根据列名获取排序数据, 假如我按升序提供输入参数作为前50条记录的“时间”,如果我将输入参数作为“成本”提供前50条记录。
我尝试过这样的事情,但这不起作用。
{
TableName: "User",
Limit: 50,
ScanIndexForward: false,
ExclusiveStartKey: (params.lastEvaluatedKey)? {tripId: {S: String(params.lastEvaluatedKey)}}: null,
KeyConditionExpression : 'cost > :costValue',
ExpressionAttributeValues : {
':costValue': '1'
}
}
先谢谢。
答案 0 :(得分:0)
不幸的是,Dynamodb没有对表中的所有属性进行排序功能。您只能使用ScanIndexForward为true / false来按排序键对项目进行排序。
如果要按排序键以外的属性对项目进行排序,则必须在客户端进行排序(即,Dynamodb没有此功能)。