Halaman web Anda adalah string sedangkan _id yang Anda cari adalah ObjectIds. Temuan Anda tidak cocok dengan hasil apa pun karena tidak ada dokumen di tabel hasil yang memiliki nilai ObjectId untuk elemen "webpageid".
Ada dua solusi seperti yang saya lihat.
- Anda dapat menyimpan ObjectIds alih-alih string untuk
webpageid
elemen dalamresults
koleksi. Implementasinya tentu saja didasarkan pada bagaimana dokumen-dokumen tersebut masuk ke dalam koleksi. -
Anda dapat membuat variabel string dari ObjectId
dalam loop untuk membandingkan sebagai gantinya. Misalnya, ... for(var i = 0; i < docs.length; i++) { var docId = docs[i]._id.toString(); // create a string db.get('results').findOne({'webpageid':docId}, function(err, doc) ...
Jika Anda memilih opsi kedua, Anda mungkin perlu melihat mengapa ada kutipan utama di awal webpageid
nilai untuk dokumen kedua di results
koleksi.
"webpageid" : "\"54960a916ecb16dc3c4880e8"
Terakhir, saya tidak tahu banyak tentang persyaratan Anda, tetapi Anda mungkin ingin memikirkan kembali MongoDB sebagai solusi. Tampaknya Anda membuat sesuatu seperti GABUNG yang merupakan sesuatu yang tidak dirancang untuk ditangani dengan baik oleh MongoDB.