我有一个包含' n'的DynamoDB表。仅在一个dynamoDB项目中预订标题(这让我感到非常震惊)
在这个结构中,rentBook是dynamoDB上的表,有2个属性:
String StudentID
StringSet BookTitle // something like:["title1","title2","title3"]
在SQL中,我会编写类似的东西
SELECT StudentID
FROM RentBook
WHERE BookTitle = "title1" OR BookTitle = "title2"
但是使用Dynamo我无法获得正确的结果:( 有人可以帮帮我吗?
问题2:当行数增加时,此表结构是否合适?
答案 0 :(得分:0)
试试这个:
ValueMap vm = new ValueMap().withString(":val1", "title1");
ScanRequest scanRequest = new ScanRequest()
.withTableName("RentBook")
.withFilterExpression("contains(BookTitle, :val1)")
.withExpressionAttributeValues(vm);