Sử dụng toán tử $in để tìm document có mảng chứa ít nhất một trong các phần tử chỉ định.
Ví dụ minh họa
Sử dụng cùng collection findByMultipleArrayDemo như bài trước.
Tìm sinh viên học "Compiler" HOẶC "Computer Networks"
> db.findByMultipleArrayDemo.find({MonHocChuyenNganh: {$in: ["Compiler", "Computer Networks"]}}).pretty();
Kết quả: John Smith và David Johnson (cả hai có cả 2 môn). Carol và Bob không có môn nào trong danh sách.
So sánh $in vs $all:
| Toán tử | Logic | Ví dụ khớp |
|---|---|---|
| $in | OR - ít nhất 1 | ["Compiler"] khớp {$in: ["Compiler", "Networks"]} |
| $all | AND - tất cả | ["Compiler", "Networks"] khớp {$all: ["Compiler", "Networks"]} |
Lưu ý: $in cũng dùng cho trường không phải mảng (so khớp giá trị đơn).