java怎么做到使用mongodb来进行分组查询统

Python010

java怎么做到使用mongodb来进行分组查询统,第1张

java操作mongodb进行查询,常用筛选条件的设置如下:

条件列表:

BasicDBList

condList

=

new

BasicDBList()

临时条件对象:

BasicDBObject

cond

=

null

DBCollection

coll

=

db.getCollection("A")

1、$where

在某种应用场合,若要集合A查询文档且要满足文档中某些属性运算结果,可以编写一脚本函数用where进行设置,比如:

某集合中存放的用户信息,包括姓名、年龄、手机号、地址等,要筛选出年龄大于20且小于等于40的用户,我们可以这样:

String

ageStr

=

"function

(){return

parseFloat(this.age)

>

20

&&

parseFloat(this.age)

<=

40}"

cond

=

new

BasicDBObject()

cond.put("$where",ageStr)

放入条件列表

condList.add(cond)

2、$in

接1实例中,要查询年龄为23、40、50的用户信息,我们可以这样:

创建一个临时的条件列表对象,将条件值分别添加进去

BasicDBList

values

=

new

BasicDBList()

values.add(23)

values.add(40)

values.add(50)

cond

=

new

BasicDBObject()

cond.put("age",new

BasicDBObject("$in",values))

放入条件列表

condList.add(cond)

3、模糊匹配

接1实例中,要按照用户的姓名进行模糊查询,如:王,我们可以这样做:

使用不区分大小写的模糊查询

3.1完全匹配

MongoDB自身是不提供事务处理的。如果要实现事务操作,必须自己写实现代码。

在为你的项目选定数据库的时候,要根据你的项目来量身选择。如果需要强事务操作的和数据一致性很高的地方,最好选择健壮的关系行数据库。

如果对事务处理要求不高,而对数据存取要求很高的,则选择非关系型数据库。