आप जो करने की कोशिश कर रहे हैं वह आपके ऐप में बहुत मामूली होगा (यानी जेएस कोड findOne
के बाद ), लेकिन अगर आप वास्तव में इसे मोंगोडब में करना चाहते हैं, तो आपको एकत्रीकरण का उपयोग करने की आवश्यकता होगी। अपना कोड इसमें बदलें:
const username = req.body.User.Username;
const user = await Account.aggregate([
{
$match: {
"Users.Username": username
}
},
{
"$project": {
_id: false,
USER: {
$filter: {
input: "$Users",
as: "users",
cond: {
$eq: [
"$$users.Username",
username
]
}
}
}
}
},
{
"$unwind": "$USER"
},
{
"$project": {
USER_PIN: "$USER.PIN"
}
}
]);
if(user.length){
console.log(user[0].USER_PIN)
}else{
console.log('Username not found')
}
यहां आपके लिए वास्तविक एकत्रीकरण क्वेरी है:https://mongoplayground.net/p/ ओ-xTTa8R42w