its*_*sme 72 javascript arrays mongodb node.js express
可以在mongo db中选择像SQL一样的集合文档:
SELECT * FROM collection WHERE _id IN (1,2,3,4);
Run Code Online (Sandbox Code Playgroud)
或者,如果我有一个_id array我必须逐个选择,然后重新组合array/object结果?
pro*_*ook 132
简单 :)
db.collection.find( { _id : { $in : [1,2,3,4] } } );
Run Code Online (Sandbox Code Playgroud)
取自:http://www.mongodb.org/display/DOCS/Advanced+Queries#AdvancedQueries-%24in
小智 8
你可以试试这个
var ids = ["5883d387971bb840b7399130","5883d389971bb840b7399131","5883d38a971bb840b7399132"];
var oids = [];
ids.forEach(function(item){
oids.push(new ObjectId(item));
});
.find({ _id: {$in : oids}})
Run Code Online (Sandbox Code Playgroud)
因为mongodb 使用bsonand for bson 是重要的属性类型。因为_id是ObjectId你必须使用这样的:
db.collection.find( { _id : { $in : [ObjectId('1'),ObjectId('2')] } } );
Run Code Online (Sandbox Code Playgroud)
并mongodb compass像这样使用:
{ "_id" : { $in : [ObjectId('1'),ObjectId('2')] } }
Run Code Online (Sandbox Code Playgroud)
注意:字符串中的 objectId 有24长度。
在此代码列表中是用户集合中的 id 数组
var list = ["5883d387971bb840b7399130","5883d389971bb840b7399131","5883d38a971bb840b7399132"]
.find({ _id: {$in : list}})
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
56678 次 |
| 最近记录: |