多字段scala / casbah查询

时间:2015-09-22 15:28:27

标签: mongodb scala casbah querying

我正在尝试构建一个多字段查询。

我的收藏品包含以下许多文件:

{
    "_id" : ObjectId("5601711160b2abcf7ff24b46"),
    "id_a" : "43d366a9-a39b-4d49-98ce-369739471b6b",
    "id_thing" : -1,
    "data" : {
        "info1" : 36.0709427,
        "date" : "2005-11-01T00:33:21.987+07:00",
        "info2" : 24563.87148077
    }
}

对于与scalacasbah对应的文档,我没有找到使用id_thing -> -1data.info1 -> 36.0709427中进行查询的方法。

注意:我不知道如何将ISODate推送到数据库。

1 个答案:

答案 0 :(得分:1)

您应该使用MongoDBObject来形成查询并将其传递给find方法,如下所示:

//create mongo connection. This might be different in your case
val server = MongoClientURI("mongodb://localhost:27017")
private val client = MongoClient(server)
val database = client(DATABASE)
//This is what you require
val collection = ScalaMongoFactory.database("collectionName")
val cursor = collection.find(MongoDBObject("id_thing" -> -1,"data.info1" -> 36.0709427)).toList

println("output: " + cursor)

希望这会对你有所帮助。