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

Có điều kiện bao gồm một trường (_id hoặc khác) trong tập hợp dự án mongodb?

Hiện không có cách nào để thực hiện việc này trong giai đoạn $ project, nhưng bạn có thể sử dụng giai đoạn $ redact để xóa trường có điều kiện (tức là bạn đặt giá trị thành 0 giống như bạn đang làm trong ví dụ của mình.

db.collection.aggregate(
  ... matching and stuff ...
  {$project: { _id: { $ifNull: [ "$user_id", 0 ] } }},
  {$redact: {
  {$cond: {
    if: { $eq: [ "$user_id", 0 ] },
    then: '$$PRUNE',
    else: '$$DESCEND'
  }}
}


  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Tối ưu hóa tác vụ luồng không khí chuyển dữ liệu từ BigQuery sang MongoDB

  2. Nhà điều hành đường ống tổng hợp cuối cùng MongoDB $

  3. Cách lấy dữ liệu Mongo dữ liệu bằng cách sử dụng MongoDB tổng hợp

  4. Cách thêm chỉ mục trong dự án mongoDB với khuôn khổ Morphia

  5. Xác thực trong khi kết nối với phiên bản máy chủ MongoDB bằng Java