我有一個名爲「Customer」的集合。MongoDB AddCriteria:查詢不適用於DBRef列表
{
"_id" : ObjectId("588f43140cf2aa78e4da861d"),
...
//rest fields
...
"company_name" : "Customer",
"address_id" : [
{
"$ref" : "address",
"$id" : ObjectId("588f43140cf2aa78e4da861b")
},
{
"$ref" : "address",
"$id" : ObjectId("588f43140cf2aa78e4da861c")
}
],
"parent_vendor_id" : {
"$ref" : "vendor",
"$id" : ObjectId("588f40e60cf2aa78e4da8611")
}
}
而這個集合中我使用的「地址」的DBREF,通過address_id
映射這是在列表的形式。
地址集合:
{
"_id" : ObjectId("588f40e60cf2aa78e4da860f"),
"_class" : "com.bursys.bcf.domain.Address",
...
//rest fields
...
"city" : "Durham",
"country" : "United States"
}
現在我想找出城市,客戶和我使用
Query query = new Query();
query.addCriteria(where("address_id.$ref").is("address").and("address_id.city").is("Durham"));
customers = mongo.find(query, Customer.class);
但此查詢,我沒有得到結果。所以請糾正我... 任何形式的幫助將不勝感激... 在此先感謝
請分享你的 「客戶」 的模式。 –