鉴于下面的数据结构,我想编写一个过滤器表达式来查询与给定表达式(items.name =:param)匹配的所有项
{
"id" : "1",
// nested collection
"nestedValues": [
{
"id" : "1",
"name":"item1"
},
{
"id": "2",
"name":"item2"
}
]
}
我只是尝试过(但不起作用):
String filterExpression = "nestedValues.name = :param";
Map valueMap = new HashMap();
valueMap.put(":param", "item2");
ItemCollection itemCollection = table.scan(
new ScanSpec()
.withFilterExpression(filterExpression)
.withValueMap(valueMap)
);
当我尝试时(当然,因为我在集合中指定了索引,所以它可以工作):
String filterExpression = "nestedValues[1].name = :param";
Map valueMap = new HashMap();
valueMap.put(":param", "item2");
ItemCollection itemCollection = table.scan(
new ScanSpec()
.withFilterExpression(filterExpression)
.withValueMap(valueMap)
);
如何在nestedValues集合中轻松获取所有名称为“ item2”的数据库项目?
提前谢谢
(我也在这里的AWS论坛上问过:https://forums.aws.amazon.com/thread.jspa?messageID=881391󗋯)