星空网 > 软件开发 > 数据库

java MongoDB查询(二)复杂查询

前言

        在上篇《java MongoDB.aspx' >MongoDB查询(一)简单查询》中我们简单了解了下查询,但是仅仅有那些查询是不够用的,还需要复杂的查询,这篇就这点进行叙述。

1、数据结构

        集合:firstCollection

        数据内容:

        { "_id" : ObjectId("55adba52fa1f3cf038c2aea6"), "name" : "user0", "age" : 22, "sex" : 0 }

        { "_id" : ObjectId("55adba52fa1f3cf038c2aea7"), "name" : "user1", "age" : 23, "sex" : 1 }

        { "_id" : ObjectId("55adba52fa1f3cf038c2aea8"), "name" : "user2", "age" : 24, "sex" : 0 }

        { "_id" : ObjectId("55adba52fa1f3cf038c2aea9"), "name" : "user3", "age" : 25, "sex" : 1 }

        { "_id" : ObjectId("55adba52fa1f3cf038c2aeaa"), "name" : "user4", "age" : 26, "sex" : 0 }

        { "_id" : ObjectId("55adba52fa1f3cf038c2aeab"), "name" : "user5", "age" : 27, "sex" : 1 }

2、连接数据库,拿到集合firstCollection

 

        MongoClient mClient = new MongoClient("10.211.55.8");

        DB db = mClient.getDB("test");

        DBCollection collection = db.getCollection("firstCollection");

3、与查询

        操作符:$and

        场景:查询age大于23,并且sex为1的对象

        查询条件Json内容:

        {"$and":[{"age":{"$gt":23}},{"sex":1}]}

        查询条件Java内容:

        BasicDBObject ageObj = new BasicDBObject("age",new BasicDBObject("$gt",23));

        BasicDBObject sexObj = new BasicDBObject("sex",1);

        BasicDBObject andObj = new BasicDBObject("$and",Arrays.asList(ageObj,sexObj));

        执行过程:

        Cursor cursor = collection.find(andObj);

        while(cursor.hasNext()){

                DBObject obj = cursor.next();

                System.out.println(obj.toString());

        }

4、或查询

        操作符:$or

        场景:查询name为user2,或者name为user3的对象

        查询条件Json内容:

        {"$or":[{"name":"user2"},{"name":"user3"}]}

        查询条件Java内容:

        BasicDBObject user2Obj = new BasicDBObject("name","user2");

        BasicDBObject user3Obj = new BasicDBObject("name","user3");

        BasicDBObject orObj = new BasicDBObject("$or",Arrays.asList(user2Obj,user3Obj));

        执行过程:

        Cursor cursor = collection.find(orObj);

        while(cursor.hasNext()){

                DBObject obj = cursor.next();

                System.out.println(obj.toString());

        }

5、总结

        通过与或的查询,我们了解了查询条件组合的方式,通过这种方式,再联系上篇《java MongoDB查询(一)简单查询》内容就可以组合成我们想要的各种结果的查询条件了




原标题:java MongoDB查询(二)复杂查询

关键词:JAVA

*特别声明:以上内容来自于网络收集,著作权属原作者所有,如有侵权,请联系我们: admin#shaoqun.com (#换成@)。

VAT税务缴纳指南简单易懂的税务支付流程:https://www.kjdsnews.com/a/1341225.html
VAT税务缴纳指南最佳方法方法:https://www.kjdsnews.com/a/1341226.html
VAT税务缴纳指南最佳方法与步骤:https://www.kjdsnews.com/a/1341227.html
VAT税号和EORI号的正确填写方式:https://www.kjdsnews.com/a/1341228.html
VAT税号了解它的用途和重要性:https://www.kjdsnews.com/a/1341229.html
VAT税务退税的正确步骤指南:https://www.kjdsnews.com/a/1341230.html
TikTok斥资210万美元游说美国参议院阻止法案通过 :https://www.goluckyvip.com/news/188220.html
北京飞机票查询(快速查询北京至各地机票价格和航班信息):https://www.vstour.cn/a/366178.html
相关文章
我的浏览记录
最新相关资讯
海外公司注册 | 跨境电商服务平台 | 深圳旅行社 | 东南亚物流