欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

mongodb robomongodb 语句查询

程序员文章站 2022-04-14 14:31:42
...

mongodb robomongodb 语句查询

 

 

#根据时间范围查询

 

db.getCollection('request_log').find({"start_time" :{"$gte":"2017-06-21 10:19:00.000", "$lte":"2017-06-22 10:22:00.000"}}).limit(50).sort({ "start_time" : -1 });

 

#根据session_id查询

 

 

db.getCollection('request_log').find({"session_id":"40e6a7c056ef11e79660ff014f08bbd6"}).limit(50).sort({ "start_time" : -1 });

 

#根据接口号查询 点语法

 

 

db.getCollection('request_log').find({"request.api_id":"daikou"}).limit(50).sort({ "start_time" : -1 });

 

 #根据多条件查询

db.getCollection('request_log').find({"start_time": "2017-06-22 10:05:24.412","request.api_id": "daikou"}).limit(50).sort({ "start_time" : -1 });

 

 

#根据多条件 为 boolean 

db.getCollection('request_log').find({"request.is_ok":true}).limit(50).sort({ "start_time" : -1 });

 

#根据多条件 为 null

 

 

db.getCollection('request_log').find({"request.debug": null}).limit(50).sort({ "start_time" : -1 });

 

 #根据多条件 为 数字 

 

 

db.request_log.find({"request.ret_size": 179}).limit(50).sort({ "start_time" : -1 }); 

 

 #根据多条件 模糊查询

 

 

db.request_log.find({"req_msg": {$regex: 'ceshi', $options:'i'}}).limit(50).sort({ "start_time" : -1 });

 

 

#根据多条件 跳过前N个结果

db.request_log.find({"req_msg": {$regex: 'ceshi', $options:'i'}}).skip(0).limit(50).sort({ "start_time" : -1 });

db.request_log.find({"request.req_data": /异常/}).limit(50).sort({ "start_time" : -1 });

 

 

 #查询特定值

db.xxx.find({},{"[要查询的字段]":1})

db.request_log.find({"start_time" :{"$gte":"2018-07-02 00:30:00.000", "$lte":"2018-07-02 23:59:00.000"}, "request.api_id":"shoudan@T40"},{"request.req_data":1}).limit(50).sort({ "start_time" : -1 });

 

 

 mongodb sum

db.runCommand({"group":{  
    "ns":"request_log",  
    "key":"request.api_id",  
    "initial":{"total":0},  
    "$reduce" : function(doc,prev){  
        prev.total += 1;  
    },  
    "condition":{"start_timAe" :{"$gte":"2019-05-05 00:00:00.000", "$lte":"2019-05-10 23:59:59.000"},"request.api_id":"oa_api_common@face_valid" }
}});  

 

 结果

{
    "retval" : [ 
        {
            "total" : 216.0
        }
    ],
    "count" : NumberLong(216),
    "keys" : NumberLong(1),
    "ok" : 1.0
}

 

 

mongodb group 

db.request_log.group({
 cond : {"start_time" :{"$gte":"2019-02-20 00:00:00.000", "$lte":"2019-02-20 23:59:59.999"}},
 key : {"request.api_id":1}, 
 initial : {counts:0,err_counts:0,time_lens:0,error_time_lens:0}, 
 reduce : function Reduce(cur, out) {
       out.counts++;
       out.time_lens += cur.time_len;
       if(cur.request != null){ 
	   if(!cur.request.is_ok){
		  out.err_counts++;
		  out.error_time_lens += cur.time_len;
	   }
   } 
}, 
 finalize : function Finalize(out) {
	out.suc_counts = out.counts -  out.err_counts;
	out.suc_time_lens = out.time_lens - out.error_time_lens;
	return out;
}});

 

结果

[
    {
        "request.api_id" : "common",
        "counts" : 2815.0,
        "err_counts" : 10.0,
        "time_lens" : 337030.0,
        "error_time_lens" : 653.0,
        "suc_counts" : 2805.0,
        "suc_time_lens" : 336377.0
    },
    {
        "request.api_id" : "order",
        "counts" : 128.0,
        "err_counts" : 1.0,
        "time_lens" : 10205.0,
        "error_time_lens" : 360.0,
        "suc_counts" : 127.0,
        "suc_time_lens" : 9845.0
    }
    ]

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

捐助开发者 

在兴趣的驱动下,写一个免费的东西,有欣喜,也还有汗水,希望你喜欢我的作品,同时也能支持一下。 当然,有钱捧个钱场(支持支付宝和微信 以及扣扣群),没钱捧个人场,谢谢各位。

 

个人主页http://knight-black-bob.iteye.com/


mongodb robomongodb 语句查询
            
    
    博客分类: mongodb mongodbrobomongodb语句查询 mongodb robomongodb 语句查询
            
    
    博客分类: mongodb mongodbrobomongodb语句查询 mongodb robomongodb 语句查询
            
    
    博客分类: mongodb mongodbrobomongodb语句查询 
 
 
 谢谢您的赞助,我会做的更好!