MongoDB在java中各种查询
2018-04-12 13:37
267 查看
import java.net.UnknownHostException; import com.mongodb.BasicDBList; import com.mongodb.BasicDBObject; import com.mongodb.DB; import com.mongodb.DBCollection; import com.mongodb.Mongo; public class MongoDBTest { private static DB db = null; static{ Mongo mongo = null; try { mongo = new Mongo("localhost", 27017); } catch (UnknownHostException e) { e.printStackTrace(); } db = mongo.getDB("TestDB"); //连接数据 } /** * select count(*) from list */ public Long m1() { DBCollection collection = db.getCollection("list"); return collection.count(); } /** * select count(*) from list where userId = 'orange' */ public Long m2(){ DBCollection listCollection = db.getCollection("list"); BasicDBObject query =new BasicDBObject(); query.put("userId", "orange"); return listCollection.count(query); } /** * select count(*) from list where userId = 'orange' and time >= '20101201' and time <= '20101211' */ public Long m3(){ DBCollection listCollection = db.getCollection("list"); BasicDBObject query =new BasicDBObject(); query.put("userId","orange"); query.put("time", new BasicDBObject("$gte", "20101201").append("$lte", "20101211")); return listCollection.count(query); } /** * select count(distinct(userId)) from detail where time >= '20101201' and time <='20101211' */ public int m4() { DBCollection collection = db.getCollection("detail"); BasicDBObject query = new BasicDBObject(); query.put("time", new BasicDBObject("$gte", "20101201").append("$lte", "20101211")); return collection.distinct("userId", query).size(); } /** * select date_format(time, '%Y-%m-%d %H') as sj ,count(*) from detail group by sj */ public void m5() { DBCollection collection = db.getCollection("detail"); String formatDate = "function(obj,doc){" + "var date = new Date(doc.time);" + "var dateKey = date.getFullYear()+\"-\"+(date.getMonth()+1)+\"-\"+date.getDate(); " + "return {'time':datekey}" + "}"; BasicDBObject key = new BasicDBObject(); key.put(formatDate, true); // 要分组的列 BasicDBObject query = new BasicDBObject(); // where条件 String reduce = "function (obj, prev) {prev.count++}"; BasicDBObject initial = new BasicDBObject(); initial.append("count", 0); // 每列初始值 BasicDBList group = (BasicDBList) collection.group(key, query, initial, reduce); System.out.println(group); } }转载地址:https://blog.csdn.net/itjavaer/article/details/47953761
相关文章推荐
- java 中 mongodb的各种操作 模糊查询 精确查询 等等
- java 中 mongodb的各种操作 模糊查询 精确查询 等等
- java 中 mongodb的各种操作查询
- java 中 mongodb的各种操作 模糊查询 精确查询 等等
- java 中 mongodb的各种操作 模糊查询 精确查询 等等
- java 中 mongodb的各种操作 模糊查询 精确查询 等等
- Java操作MongoDB采用MongoRepository仓库进行条件查询
- java操作mongodb——查询数据
- 如何在Java中对MongoDB按日期进行查询统计
- java-mongodb查询笔记
- mongoDB查询,高级查询,含java操作mongo查询
- java学习(三) java 中 mongodb的各种操作
- java操作mongoDB查询的实例详解
- java查询mongodb
- Mongodb 3.4 Java 显示指定字段、 条件查询 官方手册
- MongoDB java api for 插入和单collection基本查询使用示例
- mongodb系列之四:java高级查询
- 浅谈java实现mongoDB的多条件查询
- java 中 mongodb的各种操作
- JAVA的mongodb查询之OR和排序