比较Mongoid中的单独列

时间:2012-02-06 19:03:51

标签: ruby-on-rails mongodb mongoid

我正在寻找相当于的mongoid: How to select the comparison of two columns as one column in Oracle

我似乎无法找到比较同一查询中的列的任何文档或示例。这在Mongoid中是不可能的吗?

1 个答案:

答案 0 :(得分:1)

不,你需要下载到mongodb ruby​​驱动程序来执行此操作,它可能会非常慢,因为它是一个不使用索引的javascript查询:

Model.collection.find_one({"$where" => 'this.name == this.name2'})

这相当于第三个shell命令。:

> db.collection.insert({name: "awesome", name2: "awesome"})
> db.collection.insert({name: "awesome", name2: "awesome2"})
> db.collection.find('this.name == this.name2')
{ "_id" : ObjectId("xxx"), "name" : "awesome", "name2" : "awesome" }
> (line shown to signify end of results)

注意:如果文档没有键name,并且同一文档也没有键name2,则返回true,因为null == null。