工作日志

MongoDB查询技巧
本文介绍MongoDB中的多种高级查询技巧,包括限定返回字段、按指定字段排序、使用时间区间筛选数据等,帮助开发者更高效地操作数据库。
// 降序排列,获取数据库中前两千数据
DBCursor cursor = this.getReadColl().find().limit(2000).sort(new BasicDBObject("count", -1));
// 查询数据的时间区间
BasicDBObject query = new BasicDBObject("$gt", "2015-11-09 00:00:00").append("$lt", "2015-11-18 59:59:59");
// 查询word字段在onePlusList(普通的list就可以)出现的文档
query2.put("word", new BasicDBObject("$in", onePlusList));
// 查询reposts_count字段不是0的
DBObject query = new BasicDBObject("reposts_count", new BasicDBObject("$ne", 0));
// 仅仅返回符合条件query的对象的mid,username,text 字段
DBObject back = new BasicDBObject();
back.put("mid", 1);
back.put("username", 1);
back.put("text", 1);
DBCursor cursor = this.getReadColl().find(query, back);


access_token":" ","remind_in":"157679999","expires_in":157679999,"uid":"3186249265"
// 设置代理ip
httpClient.getHostConfiguration().setProxy("124.160.194.71", 80);


// 针对post请求的设置参数
PostMethod postMethod = new PostMethod("http://dict.cn/");

postMethod.setRequestBody(new NameValuePair[]{new NameValuePair("q","java")});




其他冷门的sql脚本:
1、根据id搜索:{"_id" : ObjectId("550a40cc77c805e7d59f07cc")}
2、根据时间搜索:{"ct":{$gt:ISODate("2015-05-08T12:18:51.303Z")}}
3、查空:db.table.find({name:{$in:[null]}});
4、查非空:db.table.find({name:{$ne:null}});
5、and:{name:'xb12369',name:'test'}
6、or:{$or:[{name:'xb12369'},{name:'test'}]}
7、升降序:{ct:-1}  {ct:1}  -1降序  1升序
模糊查询
String query = "^.*" + string.split(",")[0] + ".*$";
Pattern pattern=Pattern.compile(query);            


DBCursor cursor = this
.getReadColl()
.find(new BasicDBObject("text", pattern)).limit(5);

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值