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

MongoDB:Lựa chọn có điều kiện từ một bộ sưu tập dựa trên một bộ sưu tập khác

Bạn có thể thử truy vấn tổng hợp bên dưới.

db.animals.aggregate([ [
  {
    "$lookup": {
      "from": "meals",
      "localField": "lastMeal",
      "foreignField": "id",
      "as": "last_meal"
    }
  },
  {
    "$unwind": "$last_meal"
  },
  {
    "$match": {
      "last_meal.created": {
        "$gt": 20171001
      }
    }
  }
])

Thông tin thêm tại đây .

Bạn có thể sử dụng $project với loại trừ sau $match giai đoạn định dạng phản hồi để loại trừ các trường đã tham gia. Một cái gì đó giống như { $project: {"last_meal":0} }



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Sao chép giá trị mảng đầu tiên sang một trường khác trong MongoDB

  2. Tại sao lại là alert de [fine] d, và sau đó hai dòng lại không phải (Meteor)?

  3. Cập nhật bản ghi bằng mongoose

  4. Chuyển các biến sang chế độ xem MongoDB

  5. Sử dụng các phương thức của lớp Tài liệu MongoEngine để xác thực tùy chỉnh và lưu trước các móc