[英]Golang mgo result into simple slice
我對Go和MongoDB都很新。 嘗試從數據庫中選擇一個字段並將其保存在int切片中,但沒有任何效果。
userIDs := []int64{}
coll.Find(bson.M{"isdeleted": false}).Select(bson.M{"userid": 1}).All(&userIDs)
以上打印出一個空切片。 但是,如果我使用單個ID
字段創建一個帶有編組的int64的結構,那么它可以正常工作。
我所要做的就是使用一個包含我需要的ID的簡單切片,而不是一個包含單個字段的結構。 所有幫助表示贊賞。
由於mgo查詢返回文檔,因此需要幾行代碼才能完成目標:
var result []struct{ UserID int64 `bson:"userid"` }
err := coll.Find(bson.M{"isdeleted": false}).Select(bson.M{"userid": 1}).All(&result)
if err != nil {
// handle error
}
userIDs := make([]int64, len(result))
for i := range result {
userIDs[i] = result.UserID
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.