第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

使用 mongodb $in 查詢時,如果使用 [] uint8 進行查詢,則會出現(xiàn)

使用 mongodb $in 查詢時,如果使用 [] uint8 進行查詢,則會出現(xiàn)

Go
回首憶惘然 2022-10-17 19:31:48
大家。當我在 mongodb $in 查詢選擇器中使用 []uint8 數(shù)組時,會出現(xiàn)“(BadValue)$in 需要一個數(shù)組”錯誤。有人可以給我一些幫助嗎?謝謝 ?。?!這是我的復制步驟:MongoDB信息mongodb驅(qū)動版本為v1.8.1$ mongo --host 192.168.64.6MongoDB shell version v4.0.3connecting to: mongodb://192.168.64.6:27017/Implicit session: session { "id" : UUID("e4d7cea2-ab81-45ad-a51e-e7acf45a7242") }MongoDB server version: 4.4.8WARNING: shell and server versions do not matchmongos> use testingswitched to db testingmongos> db.numbers.find(){ "_id" : ObjectId("61b71d3d73b251bceee62032"), "type" : 0, "value" : 0 }{ "_id" : ObjectId("61b71d3d73b251bceee62033"), "type" : 1, "value" : 1 }{ "_id" : ObjectId("61b71d3d73b251bceee62034"), "type" : 2, "value" : 2 }{ "_id" : ObjectId("61b71d3d73b251bceee62035"), "type" : 3, "value" : 3 }{ "_id" : ObjectId("61b71d3d73b251bceee62036"), "value" : 4, "type" : 4 }{ "_id" : ObjectId("61b71d3d73b251bceee62037"), "value" : 5, "type" : 5 }{ "_id" : ObjectId("61b71d3d73b251bceee62038"), "type" : 6, "value" : 6 }{ "_id" : ObjectId("61b71d3d73b251bceee62039"), "type" : 7, "value" : 7 }{ "_id" : ObjectId("61b71d3d73b251bceee6203a"), "type" : 8, "value" : 8 }{ "_id" : ObjectId("61b71d3d73b251bceee6203b"), "type" : 9, "value" : 9 }去代碼package mainimport (    "context"    "fmt"    "time"    "go.mongodb.org/mongo-driver/mongo"    "go.mongodb.org/mongo-driver/mongo/options"    "go.mongodb.org/mongo-driver/bson")func main() {    // init mongodb client    ctx, cancel := context.WithTimeout(context.Background(), 10*time.Second)    defer cancel()    client, err := mongo.Connect(ctx, options.Client().ApplyURI("mongodb://192.168.64.6:27017/"))    if err != nil {        fmt.Println(err)        return    }    // mock some data    collection := client.Database("testing").Collection("numbers")    for i := 0; i < 10; i++ {        _, err = collection.InsertOne(ctx, bson.M{"type": uint8(i), "value": i})        if err != nil {            fmt.Println(err)            return        }
查看完整描述

2 回答

?
白衣染霜花

TA貢獻1796條經(jīng)驗 獲得超10個贊

uint8是 的別名byte,并且[]byte是一種特殊類型,它的處理方式與其他切片類型不同(不是數(shù)字切片)。[]byte值使用編碼bsoncodec.ByteSliceCodec,其他切片值使用編碼bsoncodec.SliceCodec。

使用任何其他數(shù)字類型的切片,例如[]int8[]int

filter := bson.M{"type": bson.M{"$in": []int{1, 2, 3}}}

注意:mongo 驅(qū)動程序有自己的 BSON 實現(xiàn)和包,請使用:go.mongodb.org/mongo-driver/bson. 在您的示例中,您正在導入和使用gopkg.in/mgo.v2/bson它是一個完全不同的 BSON 實現(xiàn),作為mgo驅(qū)動程序的一部分開發(fā)(現(xiàn)在不受支持且已過時)。不要混合不同的驅(qū)動程序。


查看完整回答
反對 回復 2022-10-17
?
臨摹微笑

TA貢獻1982條經(jīng)驗 獲得超2個贊

您應該刪除 to 的轉(zhuǎn)換i,uint8并像這樣獲取數(shù)據(jù)正確的代碼。


// mock some data

collection := client.Database("testing").Collection("numbers")

for i := 0; i < 10; i++ {

    _, err = collection.InsertOne(ctx, bson.M{"type": i, "value": i})

    if err != nil {

        fmt.Println(err)

        return

    }

}


 res := collection.FindOne(ctx, bson.M{

    "type": bson.M{

        "$in": []int{1, 2, 3},

    },

})

if res.Err()!=nil{

        // handle error

}

然后您可以獲取原始數(shù)據(jù)或解碼為另一種類型,例如:


 res.DecodeBytes()


查看完整回答
反對 回復 2022-10-17
  • 2 回答
  • 0 關(guān)注
  • 165 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學習伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號