Để khớp (tìm) các tài liệu theo danh sách _id, sử dụng toán tử $in trong MongoDB. Tạo collection:
> db.demo528.insertOne({"Name":"Chris",Age:21});
{ "acknowledged" : true, "insertedId" : ObjectId("5e8b00d2ef4dcbee04fbbbe0") }
> db.demo528.insertOne({"Name":"Bob",Age:22});
{ "acknowledged" : true, "insertedId" : ObjectId("5e8b00d9ef4dcbee04fbbbe1") }
> db.demo528.insertOne({"Name":"David",Age:20});
{ "acknowledged" : true, "insertedId" : ObjectId("5e8b00e0ef4dcbee04fbbbe2") }
Hiển thị dữ liệu:
> db.demo528.find();
Kết quả:
Tìm 2 tài liệu cụ thể theo _id (Chris và David):
> db.demo528.find({ _id: {$in:[ObjectId("5e8b00d2ef4dcbee04fbbbe0"),ObjectId("5e8b00e0ef4dcbee04fbbbe2")]} });Kết quả trả về 2 tài liệu khớp:
Lưu ý:
$invới mảng ObjectId cho phép truy xuất hàng loạt tài liệu theo khóa chính trong 1 truy vấn duy nhất, hiệu quả hơn nhiều so với gọifindOne()nhiều lần.Cú pháp driver: Trong Node.js driver, chuyển chuỗi thành ObjectId:
new ObjectId("5e8b00d2ef4dcbee04fbbbe0")hoặc dùngmongoose.Types.ObjectId().