考虑以下文档结构(用户)
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")
我做错了什么?
注意:“手机”类已嵌入“用户”类中。
答案 0 :(得分:1)
以下是解决方案:
temp = User.where(user_id: => "Balan",:'phone.number'.in => ["22232323"])
或者如果你想以不同的方式运行
temp = User.where(user_id: => "Balan").where(:'phone.number'.in => ["22232323"])
答案 1 :(得分:1)
如果你使用的是Mongoid 3,你可以说
temp = User.where(user_id: 'Balan').in('phone.number' => ['22232323'])
此查询语法由Origin(现在是Mongoid的依赖项)提供。 [1]