Saat mencocokkan dengan larik, jika Anda menentukan kueri seperti ini:
{ exercises: { _id: exerciseID } }
MongoDB mencoba melakukan kecocokan persis pada dokumen
. Jadi dalam hal ini, MongoDB hanya akan mencocokkan dokumen di exercises array dengan bentuk persis { _id: ObjectId("...") } . Karena dokumen dalam exercises memiliki bidang lain, ini tidak akan pernah menghasilkan kecocokan, bahkan jika _id s adalah sama.
Yang ingin Anda lakukan adalah meminta kolom dokumen dalam array . Dokumen kueri lengkap kemudian akan terlihat seperti ini:
{
user: user.id,
"exercises._id": exerciseID
}