时间:2021-07-01 10:21:17 帮助过:7人阅读
注意:不管是mongdb原始命令,还是go调用,$sum操作符号,只能汇总数值类型的字段(比如,Double,float等);之前保存的时候num字段保存为string类型(“5”),无法汇总; db.process_list_info.find({"code":"fwq_add"}).forEach(function(obj){obj.detail.detail.forEach(function(bj){ bj.num = parseFloat(bj.num) } );db.process_list_info.save(obj) }) db.process_list_info.find({"code":"fwq_mv_add"}).forEach(function(obj){obj.detail.detail.forEach(function(bj){ bj.num = parseFloat(bj.num) } );db.process_list_info.save(obj) }) 这样处理以后num字段转换成了Double; db.foo.find({bad: {$exists: true}}).forEach(function(obj) { obj.user_id = new NumberInt(obj.user_id); db.foo.save(obj); });
go的管道调用
func (this *BaseMongo) FindPipe(dataBase string, col string, queryStruct []interface{}) []interface{} { if session.Ping() != nil { doConn() } c := session.DB(dataBase).C(col) var result []interface{} c.Pipe(&queryStruct).All(&result) return result }
go语言mongdb管道使用
标签: