蒙哥:4.4 去:1.17.3我正在嘗試獲取字符串字段值超過四個符號的文檔。這是我在 mongo 的 shell 中使用的查詢:db.player.find({ "name": { "$exists": true }, "$expr": { "$gt": [ { "$strLenCP": "$name" }, 4 ] } })這是相同的查詢,但編碼為bsonfilter in go:longName := bson.M{ "name": bson.M{"$exists": true}, "$expr": bson.M{ "$gt": bson.A{ bson.M{"$strLenCP": "$name"}, 4, }, },}fmc, err := collection.Find(context.TODO(), longName)if err != nil { log.Panic(err)}var longBoi models.Playererr = fmc.Decode(&longBoi)if err != nil { log.Panic(err) // panic here: // 2021/12/15 15:53:46 EOF // panic: EOF}第一個將輸出字符串字段值長度大于某個數(shù)字的所需文檔。第二個將與 just EOF、 timestamp 和 callstack 錯誤。調(diào)試器說batch內(nèi)部游標(biāo)fmc不包含數(shù)據(jù)。第二種情況有什么問題?
Mongo 過濾器在 mongo shell 中工作,但在 go 中編寫時不起作用
30秒到達戰(zhàn)場
2022-10-17 19:36:31