我正在使用Casbah连接和查询Mongo数据库。现在,我正在尝试查询值不为空的字段。
使用简单的Mongo语法,我想要的查询应该是collection.find({"key" : {$ne : null }} )
在casbah中,我尝试过不编译的collection.find("key" $ne null)和在运行时抛出空指针异常的collection.find("key" $ne MongoDBObject(null)),以及实际上不能正确查询的collection.find("key" $ne org.bson.BSON.NULL)。
collection.find("key" -> null)将查询那些为null的数据。
我的语法可能在上面的例子中微妙地偏离了,但基本的思想应该被传达出来。
有没有人有主意?
我不能更改数据库,使空条目不存在。这不是我能控制的。我可以改成not casbah,但我真的不想。
发布于 2014-02-14 07:57:59
在scala中,您通常可以使用None来表示null。在这里,您需要:
collection.find("key" $ne None)发布于 2015-02-25 21:56:19
collection.find(MongoDBObject("key" -> MongoDBObject("$ne" -> None)))这就完成了工作。我也被困在这件事上
https://stackoverflow.com/questions/18389388
复制相似问题