Để tìm tài liệu chứa từ khóa cụ thể, sử dụng find() với regex /từ_khóa/i (i = case-insensitive). Tạo collection:
> db.demo212.insertOne({"details":[{"Name":"John Doe"}]});
{ "acknowledged" : true, "insertedId" : ObjectId("5e3e2c7603d395bdc21346ff") }
> db.demo212.insertOne({"details":[{"Name":"Chris Brown"}]});
{ "acknowledged" : true, "insertedId" : ObjectId("5e3e2c8003d395bdc2134700") }
> db.demo212.insertOne({"details":[{"Name":"Robert doe"}]});
{ "acknowledged" : true, "insertedId" : ObjectId("5e3e2c8a03d395bdc2134701") }
Hiển thị tất cả:
> db.demo212.find();
Kết quả:
Tìm tài liệu có từ "doe" trong details.Name (không phân biệt hoa thường):
> db.demo212.find({"details.Name": /doe/i});Kết quả - khớp "John Doe" và "Robert doe":
Lưu ý: Regex
/doe/itìm chuỗi con "doe" bất kỳ vị trí nào. Để tìm chính xác từ, dùng/\bdoe\b/i. Với dữ liệu lớn, cân nhắc Text Search với text index.