Kno*_*dge 3 sql database amazon-web-services amazon-dynamodb
我尝试使用二级索引查询我的表Tinpon,产生一个分区键类别和排序键tinponId.我的目标是排除带有某些tinponIds的物品.我首先想到的是使负比较:
keyConditionExpression = "category = :category AND tinponId != :tinponId"
但只有一个等于=对比.然后我尝试了serval其他方法(遗憾的是不存在):
keyConditionExpression = "category = :category NOT tinponId = :tinponId"
keyConditionExpression = "category = :category AND tinponId <> :tinponId"
keyConditionExpression = "category = :category AND tinponId < :tinponId AND tinponId > :tinponId"
遵循AWS指南,没有不相等的比较.为什么这样?有没有办法查询除了id列表之外的DynamoDB,或者是检索一大堆项目并在以后手动过滤它们的唯一选项?
not*_*est 18
在KeyConditionExpression不允许不等于该排序键.但是,您可以使用"不等同,即<>"在FilterExpression.
KeyConditionExpression : 'category = :category',
FilterExpression : 'tinponId <> :tinponIdVal',
ExpressionAttributeValues : {
':category' : 'somevalue',
':tinponIdVal' : 'somevalue'
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
9326 次 |
| 最近记录: |