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

tìm tài liệu đầu tiên cho từng giá trị riêng biệt cho một trường

Bạn cần chạy một hoạt động tổng hợp nhóm tất cả các tài liệu theo field3 và sử dụng $ first tích lũy với $$ ROOT biến hệ thống để đưa tài liệu đầu tiên, giống như sau:

db.myCollection.aggregate([
    {
        "$group": {
            "_id": "$field3",
            "doc": { "$first": "$$ROOT" }
        }
    }
])

hoặc cho một đầu ra chính xác:

db.myCollection.aggregate([
    {
        "$group": {
            "_id": "$field3",
            "field1": { "$first": "$field1" },
            "field2": { "$first": "$field2" }
        }
    },
    {
        "$project": {
            "_id": 0,
            "field3": "$_id",
            "field2": 1,
            "field1": 1
        }
    }
])


  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. MongoDB - $ set để cập nhật hoặc đẩy phần tử Array

  2. Nút mongodb:Lỗi:kết nối bị đóng do lỗi phân tích cú pháp

  3. Các yếu tố hoạt động cần xem xét trong quá trình tạo mô hình dữ liệu MongoDB

  4. Cách nhanh nhất để có được biểu đồ kích thước mảng bằng cách sử dụng khung tổng hợp MongoDB

  5. Lưu trữ các lược đồ và hàm biểu mẫu trong Cơ sở dữ liệu