0

MongoDBドキュメントには、次の例があります。

db.factories.insert( { name: "xyz", metro: { city: "New York", state: "NY" } } );
db.factories.ensureIndex( { metro : 1 } );
// this query can use the above index:
db.factories.find( { metro: { city: "New York", state: "NY" } } );

私は現在、このクエリを春のデータにアーカイブするための解決策を探しています。私の最初のアプローチは

Query.query(Criteria.where("metro")
    .andOperator(Criteria.where("city").is("New York")
    .and("state").is("NY")))

しかし、これは次のクエリになります

{ "metro" : { } , "$and" : [ { "city" : "New York" , "state" : "NY"}]}
4

1 に答える 1

0

最後に、私はいじくり回して解決策を見つけました:

Query.query(Criteria.where("metro").is(
    Query.query(
        Criteria.where("city").is("New York")
        .and("state").is("NY")).getQueryObject()
    )
)
// results in { metro: { city: "New York", state: "NY" } }

うまくいけば、これはそれを行うための正しい方法です...

于 2012-11-14T12:58:16.350 に答える