我有一个具有不同属性的实体,其中一个属性是对象数组,我正在使用Objectify使用Java
现在我想用filter进行查询,只返回具有特定数组大小的所有实体的计数E.g messages size=2
示例:
Kind: Request
和 propery:
name messeges
{
"values": [
{
"K1": "V1",
"K2": "V2"
},
{
"K3": "V3",
"K4": "V4"
},
{
"K5": "V5",
"K6": "V6"
}
]
}
类似的东西:
int count = ofy().load().type(Request.class).filter("?? return count , to query with messages size is 2..").count()
有任何建议吗?
答案 0 :(得分:1)
无法使用数据存储区进行此类查询。
但是你可以向你的实体添加一个属性,让我们称之为values_count
,以反映values
数组大小,并在该属性上进行相等的查询(例如{{1 }})
我将其作为计算属性,每当实体更新时自动更新,请参阅Is it possible to have a computed property on Google App Engine using Java?