Mongodb操作集合
1.转换字段数据类型
db.yfy_score_record.find({DATE_TIME:{$type:"string"}}).forEach(function(doc) { doc.DATE_TIME=new Date(doc.DATE_TIME); db.yfy_score_record.save(doc); })
脚本介绍:
yfy_score_record是表名称
{DATE_TIME:{$type:"string"}}表示DATE_TIME字段必须是string类型
doc.DATE_TIME=new Date(doc.DATE_TIME);修改DATE_TIME字段类型,变为Date类型
db.yfy_score_record.save(doc);保存修改后的字段信息
2.查询内容保存到新的集合
db.col1.find().forEach(function(x){db.col2.insert(x);})
db.col2.find().count();
3.排序and限制文档数
db.vt_traffic.find().sort({"num":-1}).limit(10)
4.使用$out
运算符将结果导出到新的集合hc_hosting_stat
> db.hc_hosting.aggregate( { $group : { _id : "$hosting", total : { $sum : 1 } } }, { $out : "hc_hosting_stat" } );
4.求某个字段的和
这种方法能够直接统计自己指定字段的和, 但是有个局限性, 如果字段类型不全为数字类型, 则统计数会有误(例如字段类型全为string
的话直接为0)
db.yourCollection.aggregate( [ { $group: { _id: null, total: { $sum: "$discountMoney" } } } ] );