mongoDB中的null值问题

假设mongoDB中有一个collection,名称为foo,里面有4条记录:

 

{x:"1", y:"a"}
{x:"2", y:"b"}
{x:"3", y:null}
{x:"4"}

 

那么,用null作为查询条件,进行查询:

 

FooDao dao = new FooDao();
List<Foo> list = dao.query().is("y", null).results();

 

查询结果是:

 

{x:"3", y:null}
{x:"4"}
 

有点出乎意料,是不是?

 

其实,如果数据是通过BuguMongo保存进mongoDB中的,那么值为null的字段根本不会保存,即:不会存在 {x:"3", y:null}这样的记录,而是被保存成了{x:"3"}

 

在上面的例子中,如果想查询出{x:"4"}这样的记录,那么可以这样写:

 

List<Foo> list = dao.query().notExistsField("y").results();
 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值