首页 文章

使用DynamoDBMapper进行DynamoDB查询

提问于
浏览
0

假设我有一个DynamoDB表:

UserId (hash): S
BookName (range): S
BorrowedTime: S
ReturnedTime: S

UserId是主键(哈希),我需要将BookName设置为排序键(范围),因为添加到数据库的另一项是用相同的UserId覆盖前一项 .

我将如何使用DynamoDBMapper创建查询,但是查询的字段是时间字段(非键)?例如,假设我想要返回2周前借来的尚未归还的任何书籍的UserId和BookName吗?

我是否需要在BorrowedTime和ReturnedTime字段上设置GSI?

1 回答

  • 0

    是的,您可以使用BorrowedTime和ReturnedTime制作GSI,或者您可以使用扫描而不是查询,如果您使用扫描您不需要制作gsi但扫描操作会扫描整个数据库,因此不建议大型数据库或频繁使用 .

相关问题