Tài liệu về nhà → Hướng dẫn sử dụng MongoDB → MongoDB Manual
Trên trang này
- Truy vấn cho một tài liệu được lồng trong một mảng
- Chỉ định một điều kiện truy vấn trên trường trong một mảng tài liệu
- Chỉ định nhiều điều kiện cho mảng tài liệu
- Hướng dẫn truy vấn bổ sung
Sử dụng menu chọn ngôn ngữ của bạn ở phía trên bên phải để đặt ngôn ngữ của các ví dụ sau.Select your language drop-down menu in the upper-right to set the language of the following examples.
Ví dụ sau chọn tất cả các tài liệu trong đó một phần tử trong mảng instock
khớp với tài liệu được chỉ định:
Bình đẳng khớp với toàn bộ tài liệu nhúng/lồng nhau đòi hỏi một kết hợp chính xác của tài liệu được chỉ định, bao gồm cả thứ tự trường. Ví dụ: truy vấn sau không khớp với bất kỳ tài liệu nào trong bộ sưu tập inventory
:
Nếu bạn không biết vị trí chỉ mục của tài liệu được lồng trong mảng, hãy nối tên của trường mảng, với một dấu chấm [.
] và tên của trường trong tài liệu lồng nhau.
Ví dụ sau chọn tất cả các tài liệu trong đó mảng instock
có ít nhất một tài liệu nhúng có chứa trường qty
có giá trị nhỏ hơn hoặc bằng 20
:
Sử dụng ký hiệu DOT, bạn có thể chỉ định các điều kiện truy vấn cho trường trong tài liệu tại một chỉ mục hoặc vị trí cụ thể của mảng. Mảng sử dụng lập chỉ mục dựa trên không.
Ghi chú
Khi truy vấn sử dụng ký hiệu DOT, trường và chỉ mục phải ở bên trong dấu ngoặc kép.
Ví dụ sau chọn tất cả các tài liệu trong đó mảng instock
có phần tử đầu tiên là tài liệu chứa trường qty
có giá trị nhỏ hơn hoặc bằng 20
:
Khi chỉ định các điều kiện trên nhiều trường được lồng trong một mảng tài liệu, bạn có thể chỉ định truy vấn sao cho một tài liệu duy nhất đáp ứng các điều kiện này hoặc bất kỳ kết hợp tài liệu nào [bao gồm một tài liệu] trong mảng đáp ứng các điều kiện.
Sử dụng toán tử $elemMatch
để chỉ định nhiều tiêu chí trên một mảng các tài liệu nhúng sao cho ít nhất một tài liệu nhúng thỏa mãn tất cả các tiêu chí được chỉ định.
Các truy vấn ví dụ sau đây cho các tài liệu trong đó mảng instock
có ít nhất một tài liệu nhúng có chứa cả trường qty
bằng inventory
2 và trường inventory
3 bằng inventory
4:
Các truy vấn ví dụ sau đây cho các tài liệu trong đó mảng instock
có ít nhất một tài liệu nhúng có chứa trường qty
lớn hơn inventory
7 và nhỏ hơn hoặc bằng 20
:
Nếu các điều kiện truy vấn hợp chất trên trường mảng không sử dụng toán tử $elemMatch
, truy vấn sẽ chọn các tài liệu có mảng chứa bất kỳ sự kết hợp nào của các phần tử thỏa mãn các điều kiện.
Ví dụ: truy vấn sau phù hợp với các tài liệu trong đó bất kỳ tài liệu nào được lồng trong mảng instock
có trường qty
lớn hơn inventory
7 và bất kỳ tài liệu nào [nhưng không nhất thiết là cùng một tài liệu nhúng] trong mảng có trường qty
nhỏ hơn hoặc bằng 20
:
Các truy vấn ví dụ sau đây cho các tài liệu trong đó mảng instock
có ít nhất một tài liệu nhúng có chứa trường qty
bằng inventory
2 và ít nhất một tài liệu được nhúng [nhưng không nhất thiết là cùng một tài liệu nhúng] có chứa trường inventory
3 bằng inventory
4:
Để biết các ví dụ truy vấn bổ sung, xem:
Truy vấn một mảng
Tài liệu truy vấn
Truy vấn trên các tài liệu nhúng/lồng nhau
Tài liệu về nhà → Hướng dẫn sử dụng MongoDB → MongoDB Manual
Trên trang này
- Truy vấn cho một tài liệu được lồng trong một mảng
- Chỉ định một điều kiện truy vấn trên trường trong một mảng tài liệu
- Chỉ định nhiều điều kiện cho mảng tài liệu
- Hướng dẫn truy vấn bổ sung
Sử dụng menu chọn ngôn ngữ của bạn ở phía trên bên phải để đặt ngôn ngữ của các ví dụ sau.Select your language drop-down menu in the upper-right to set the language of the following examples.
Ví dụ sau chọn tất cả các tài liệu trong đó một phần tử trong mảng instock
khớp với tài liệu được chỉ định:
Bình đẳng khớp với toàn bộ tài liệu nhúng/lồng nhau đòi hỏi một kết hợp chính xác của tài liệu được chỉ định, bao gồm cả thứ tự trường. Ví dụ: truy vấn sau không khớp với bất kỳ tài liệu nào trong bộ sưu tập inventory
:
Nếu bạn không biết vị trí chỉ mục của tài liệu được lồng trong mảng, hãy nối tên của trường mảng, với một dấu chấm [.
] và tên của trường trong tài liệu lồng nhau.
Ví dụ sau chọn tất cả các tài liệu trong đó mảng instock
có ít nhất một tài liệu nhúng có chứa trường qty
có giá trị nhỏ hơn hoặc bằng 20
:
Sử dụng ký hiệu DOT, bạn có thể chỉ định các điều kiện truy vấn cho trường trong tài liệu tại một chỉ mục hoặc vị trí cụ thể của mảng. Mảng sử dụng lập chỉ mục dựa trên không.
Ghi chú
Khi truy vấn sử dụng ký hiệu DOT, trường và chỉ mục phải ở bên trong dấu ngoặc kép.
Ví dụ sau chọn tất cả các tài liệu trong đó mảng instock
có phần tử đầu tiên là tài liệu chứa trường qty
có giá trị nhỏ hơn hoặc bằng 20
:
Khi chỉ định các điều kiện trên nhiều trường được lồng trong một mảng tài liệu, bạn có thể chỉ định truy vấn sao cho một tài liệu duy nhất đáp ứng các điều kiện này hoặc bất kỳ kết hợp tài liệu nào [bao gồm một tài liệu] trong mảng đáp ứng các điều kiện.
Sử dụng toán tử $elemMatch
để chỉ định nhiều tiêu chí trên một mảng các tài liệu nhúng sao cho ít nhất một tài liệu nhúng thỏa mãn tất cả các tiêu chí được chỉ định.
Các truy vấn ví dụ sau đây cho các tài liệu trong đó mảng instock
có ít nhất một tài liệu nhúng có chứa cả trường qty
bằng inventory
2 và trường inventory
3 bằng inventory
4:
Các truy vấn ví dụ sau đây cho các tài liệu trong đó mảng instock
có ít nhất một tài liệu nhúng có chứa trường qty
lớn hơn inventory
7 và nhỏ hơn hoặc bằng 20
:
Nếu các điều kiện truy vấn hợp chất trên trường mảng không sử dụng toán tử $elemMatch
, truy vấn sẽ chọn các tài liệu có mảng chứa bất kỳ sự kết hợp nào của các phần tử thỏa mãn các điều kiện.
Ví dụ: truy vấn sau phù hợp với các tài liệu trong đó bất kỳ tài liệu nào được lồng trong mảng instock
có trường qty
lớn hơn inventory
7 và bất kỳ tài liệu nào [nhưng không nhất thiết là cùng một tài liệu nhúng] trong mảng có trường qty
nhỏ hơn hoặc bằng 20
:
Các truy vấn ví dụ sau đây cho các tài liệu trong đó mảng instock
có ít nhất một tài liệu nhúng có chứa trường qty
bằng inventory
2 và ít nhất một tài liệu được nhúng [nhưng không nhất thiết là cùng một tài liệu nhúng] có chứa trường inventory
3 bằng inventory
4:
Để biết các ví dụ truy vấn bổ sung, xem:
Truy vấn một mảng
Tài liệu truy vấn
Truy vấn trên các tài liệu nhúng/lồng nhau