Нет, вам нужно перейти к драйверу mongodb ruby, чтобы сделать это, и он может быть очень медленным, поскольку это запрос javascript, который не будет использовать индекс:
Model.collection.find_one({"$where" => 'this.name == this.name2'})
Что эквивалентнок третьей команде оболочки здесь.:
> 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.