如何使用 go map 从 mongo 中检索非结构化形式的数据

我正在尝试使用 go map 检索数据。mongo 中的数据就像


"_id" : ObjectId("56bf128f5a9a6a0ebfdd5075"),

    "deadLine" : {

      "Start_time" : ISODate("2016-05-24T00:00:00Z"),

      "End_time" : ISODate("2016-05-29T00:00:00Z")

    },

    "taskData" : {

      "Task_content" : "Something",

      "Priority" : "3"

    },

    "group" : {

      "1" : {

      "grp_name" : "grp"

      },

      "2" : {

      "grp_name" : "secondGrp"

      }

    }

我想根据Priority.检索所有记录。


我试过的示例代码......


var m []bson.M

    err := collection.Find(bson.M{"taskData":bson.M{"Priority" : "2"}}).All(&m) // stuck here in `Find()`

    if err != nil {

        fmt.Println("Error : ",err)

    }else{

      fmt.Println("Map : ",m)

    }

  }

如果我使用 err := collection.Find(bson.M{"_id":bson.ObjectIdHex("56bf128f5a9a6a0ebfdd5075")}).All(&m) 然后它获取所有记录。请纠正我的错误。


跃然一笑
浏览 194回答 1
1回答

陪伴而非守候

var m []bson.M    err := collection.Find(bson.M{"taskData.Priority" : "2"}).All(&m)     if err != nil {        fmt.Println("Error : ",err)    }else{      fmt.Println("Map : ",m)    }  }这是描述 https://docs.mongodb.org/manual/tutorial/query-documents/#equality-match-on-fields-within-an-embedded-document
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Go