0

考虑以下文档结构(用户

id user_id phone

1  Balan   {0   - id = adsfasf232332  - number = 908767778}, 
                       ...........{1   - id = adsf343fadfasd - number = 22232323}
2  Kumar   {0   - id = adsfasf24442  - number = 2727272}

什么是 Mongo 模型查询等价于以下查询

select * from  users where user_id = "Balan" and phone_number in (22232323)

我尝试了以下查询,但没有帮助

temp = User.where(user_id: => "Balan").where('phone.number' => "22232323")

我究竟做错了什么?

注意:Phone 类嵌入在 User 类中。

4

2 回答 2

1

这是解决方案:

temp = User.where(user_id: => "Balan",:'phone.number'.in => ["22232323"])

或者如果你想以不同的方式运行

temp = User.where(user_id: => "Balan").where(:'phone.number'.in => ["22232323"])
于 2013-01-17T14:03:16.737 回答
1

如果您使用的是 Mongoid 3,您可以说

temp = User.where(user_id: 'Balan').in('phone.number' => ['22232323'])

此查询语法由 Origin 提供(现在是 Mongoid 的依赖项)。[1]

于 2013-01-18T01:55:13.667 回答