有匹配关系的杂种动物



在mongodb中,您可以使用类似的命令

db.sessions.distinct("Ip",{ 'Application': '123'})

其将返回所选应用程序的所有唯一ip。如何通过Mongoid做到这一点?

我试图在distinct函数中传递2个参数,但失败了,出现异常'ArgumentError: wrong number of arguments (2 for 1)'

Mongoid中的Distinct有一个参数——您希望在其上筛选不同的字段。因此,在您的情况下,您可以将where子句与distinct链接起来,如下所示:

 YourModel.where(Application: '123').distinct(:Ip) 

这将按字段Ip生成不同YourModel的集合,其中字段Application等于"123"。

请显示完全不同的查询。我尝试使用用户集合(3个名为Bob的文档)遵循语法:

db.users.distinct("_id", {name: "Bob"})

它的工作原理:

[
        ObjectId("5121792d499af102889f2576"),
        ObjectId("5121792e499af102889f2577"),
        ObjectId("5121792f499af102889f2578")
]

我的MongoDB版本是2.2.0

最新更新