MongoDB
 sql >> Cơ Sở Dữ Liệu >  >> NoSQL >> MongoDB

Tài liệu phụ MongoDB NodeJS Return

Những gì bạn đang cố gắng làm sẽ khá tầm thường trong ứng dụng của bạn (tức là mã JS sau findOne ), nhưng nếu bạn thực sự muốn làm điều đó trong mongodb, thì bạn sẽ cần sử dụng tính năng tổng hợp. Thay đổi mã của bạn thành:

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')
}

Đây là truy vấn tổng hợp thực tế mà bạn có thể sử dụng: https://mongoplayground.net/p/ o-xTTa8R42w




  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Kiểm tra xem liệu bộ sưu tập MongoDB có được giới hạn với trình điều khiển .NET 2.0 hay không

  2. Tìm kiếm đệ quy trên một bộ sưu tập trong MongoDB

  3. Phép chiếu $ elemMatch trong node.js

  4. cài đặt mongodb-10gen không thành công với apt-get

  5. Tìm kiếm văn bản đối tượng lồng nhau trong mongoDB