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

Cách truy xuất các khóa riêng biệt bên trong một đối tượng trong MongoDB

Bạn có thể sử dụng $ objectToArrray mới trong 3.4.4 phiên bản để chuyển đổi tất cả cặp khóa &giá trị thành mảng tài liệu theo sau là $unwind &$group với $addToSet để nhận các khóa riêng biệt

db.collection.aggregate([{$project: {indexation: {$objectToArray: "$indexation"}}}, {$unwind:"$indexation"}, {$group:{_id:null, keys:{$addToSet:"$indexation.k"}}}])

Đối với phiên bản thấp hơn, bạn phải cập nhật indexation trông giống như bên dưới và sử dụng

db.collection.distinct("indexation.k")

 { "_id" : ObjectId("58fb35531eb5df245d5d434f"), "name" : "d1.html", "indexation" : [{ "k" : "Citroen", "v" : 1 }, { "k" : "Marca", "v" : 1 }]}



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Đếm số lần xuất hiện trong tài liệu mongodb lồng nhau và giữ nhóm

  2. OpenSSL không tìm thấy trên MacOS Sierra

  3. Thiếu cú ​​pháp; trước câu lệnh trong mongoexport

  4. Tôi có thể định cấu hình MongoDB thành Trong bộ nhớ không?

  5. Định cấu hình ghi nhật ký cho trình điều khiển Java MongoDB