我试图用产生分区键category和排序键tinponId的二级索引查询表Tinpon.我的目标是排除含有某些铁皮的物品.我的第一个 idea 是做一个负面的比较: keyConditionExpression = "category = :category AND tinponId != :tinponId" 但只有=个相等的比较.然后我try 了其他几种方法(遗憾的是这些方法都不存在): keyConditionExpression = "category = :category NOT tinponId = :tinponId" keyConditionExpression = "category = :category AND tinponId <> :tinponId" keyConditionExpression = "category = :category AND tinponId < :tinponId AND tinponId > :tinponId" the AWS guide之后没有not equal个比较.为什么会这样呢? 还有,有没有一种方法可以查询DynamoDB,不包括一组ID,或者是唯一的 Select ,可以检索一大堆项并稍后手动过滤它们?

推荐答案

The KeyConditionExpression doesn't allow not equals for the sort key. However, you can use the "Not Equals i.e. <>" in FilterExpression.

KeyConditionExpression : 'category = :category',    
FilterExpression : 'tinponId  <> :tinponIdVal',
ExpressionAttributeValues : {
    ':category' : 'somevalue',
    ':tinponIdVal' :  'somevalue'
}

Database相关问答推荐

如何限制报表中返回的行数?

在多组MongoDB中查找最新文档的有效方法

DynamoDB 扫描 - 具有相同分区键的项目按顺序返回

是否可以同时从 RocksDB 读取?

如何在 N1QL 查询(Couchbase 查询)中使用 LENGTH() 字符串函数

将数据集上传到 Hub 时停止运行时会导致什么?

mysql数据库自动分区

为什么 COUNT() 只显示一行表格?

估计数据库大小

SQL 概念 LEFT OUTER JOIN 和 WHERE NOT EXISTS 基本相同吗?

在 PostgreSQL 触发函数中使用 pg_notify

保存图像:文件还是 blob?

主键、唯一键和外键约束以及索引之间有什么区别?

生成和读取条形码

JOOQ 与Hibernate

MySQL是否允许使用点创建数据库?

如何一次插入1000行

cURL 和 PHP 显示1

C# IEnumerator/yield struct 可能不好?

使用 PHP/MySQL 导入 CSV 数据