Mongo常用命令

Mongo常用命令

创建集合
 
db.createCollection("upload_fail_file")
 
清空集合数据
 
db.getCollection('upload_fail_file').remove({})
 
正则匹配
 
db.getCollection('upload_fail_file').find({intent:/寄快递/})
 
db.getCollection('upload_fail_file').find({intent:{$regex:"是"}})
 
统计条数
 
db.getCollection('upload_fail_file').find({}).count()
 
分页限数
 
skip(), limilt(), sort()三个放在一起执行的时候,执行的顺序是先 sort(), 然后是 skip(),最后是显示的 limit()。
 
db.getCollection('upload_fail_file').find({}).limit(2).skip(1)
 
 
更新某个属性
 
第一个false为更新,没有不更新,当为true时,没有查到会创建一条记录。
第二个true为muli,当为true更新所有,当为false只更新第一条。
 
更新属性
 
db.getCollection('upload_fail_file').update({"creator":"yipeng"},{$set:{"creator":"admin"}},false,true)
更新set内部属性
 
db.getCollection('upload_fail_file').update({"_id" : ObjectId("5ce548790b0018566cac1dad")},{$addToSet:{"shareUser":"admin"}},false,true)
 
 
 
删除记录
 
db.getCollection('upload_fail_file').deleteOne({"name":"吃东西"})
 
db.getCollection('upload_fail_file').deleteOne({"_id":ObjectId("5dc91733ca0ef30007f2a120")})
 
db.getCollection('upload_fail_file').remove({"pid":"11111"})
 
 
创建索引
 
db.getCollection('upload_fail_file').createIndex({"phone": 1});
 
 
创建联合索引
 
db.getCollection('upload_fail_file').createIndex({"online":NumberInt(-1),"modify_time":NumberInt(-1)},{"name":'idx_online_modify_time'});
 
 
 

显示字段的值

 
使用投影查询,只显示部分字段。db.集合名.find({},{需要显示的字段:1, 不需要显示的字段:0})
 
db.getCollection('upload_fail_file').find({},{pid:1, _id:0})
 
db.getCollection('upload_fail_file').find({},{json_detail:0})
 
 
查找集合中有重复的openid,显示重复的openid和重复的个数
 
db.getCollection('upload_fail_file').aggregate([
    { $group: { _id : '$pid', count: { $sum : 1 } } },
    { $match: { count: { $gt : 1} } }])
 
 
查询某个时间段的信息
 
db.getCollection('upload_fail_file').find({}).sort({create_time:-1})
 
db.getCollection('upload_fail_file').find({"create_time":{$gt:new Date(2019,8,8)}})
 
db.getCollection('upload_fail_file').find({"create_time":{$lt:new Date(2019,8,8)}})
 
db.getCollection('upload_fail_file').find({"$and":[{"create_time":{$lt:new Date(2019,8,12)}},{"create_time":{$gt:new Date(2019,8,4)}}]})
 
 
按月统计个数
 
db.getCollection('upload_fail_file').aggregate(
[
    {
        $project: {
            date: {
                $dateToString: {
                    format: "%Y-%m-%d",
                    date: "$create_time"
                }
            },
            year: {
                $dateToString: {
                    format: "%Y",
                    date: "$create_time"
                }
            },
            year_month: {
                $dateToString: {
                    format: "%Y-%m",
                    date: "$create_time"
                }
            },
            day: {
                $dayOfMonth: "$create_time"
            },
            responseTime: "$create_time"
        }
    },
    {
        $match: {
            $or: [
                {
                    year: '2017'
                },
                {
                    year: '2018'
                },
                {
                    year: '2019'
                },
                {
                    year: '2020'
                },
                {
                    year: '2021'
                }
            ]
        }
    },
    {
        $group: {
            "_id": "$year_month",
            "sum": {
                $sum: 1
            }
        }
    },
    {
        $sort: {
            "_id": 1
        }
    }
]
)
 
 
 
 
导入csv
 
 
mongoimport -d test -c phonetest --type csv --headerline --file 数据(例子).csv
 
 
导出json
 
 
 
mongoexport -d test -c phonetest -o c:\phoneTest.json
 
 
 
 
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

益朋

看官老爷们的打赏是我前进的动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值