Hướng dẫn mongodb aggregate date range - phạm vi ngày tổng hợp mongodb

Tài liệu về nhà → MongoDB Atlas → MongoDB AtlasMongoDB Atlas

Hướng dẫn này mô tả cách tạo một chỉ mục với ánh xạ động trên bộ sưu tập

db.movies.aggregate([
{
"$search": {
"compound": {
"must": [{
"range": {
"path": "released",
"gt": ISODate("2015-01-01T00:00:00.000Z"),
"lt": ISODate("2015-12-31T00:00:00.000Z")
}
}],
"should": [{
"near": {
"path": "released",
"origin": ISODate("2015-07-01T00:00:00.000+00:00"),
"pivot": 2629800000
}
}]
}
}
},
{
"$limit": 6
},
{
"$project": {
"_id": 0,
"title": 1,
"released": 1,
"genres": 1,
"score": { "$meta": "searchScore" }
}
}
])
3. Nó cho thấy cách chạy các truy vấn ghép đối với trường
db.movies.aggregate([
{
"$search": {
"compound": {
"must": [{
"range": {
"path": "released",
"gt": ISODate("2015-01-01T00:00:00.000Z"),
"lt": ISODate("2015-12-31T00:00:00.000Z")
}
}],
"should": [{
"near": {
"path": "released",
"origin": ISODate("2015-07-01T00:00:00.000+00:00"),
"pivot": 2629800000
}
}]
}
}
},
{
"$limit": 6
},
{
"$project": {
"_id": 0,
"title": 1,
"released": 1,
"genres": 1,
"score": { "$meta": "searchScore" }
}
}
])
4 bằng cách sử dụng phạm vi và các toán tử gần. Nó đưa bạn qua các bước sau:

  1. Thiết lập một chỉ mục tìm kiếm ATLAS với ánh xạ động cho bộ sưu tập

    db.movies.aggregate([
    {
    "$search": {
    "compound": {
    "must": [{
    "range": {
    "path": "released",
    "gt": ISODate("2015-01-01T00:00:00.000Z"),
    "lt": ISODate("2015-12-31T00:00:00.000Z")
    }
    }],
    "should": [{
    "near": {
    "path": "released",
    "origin": ISODate("2015-07-01T00:00:00.000+00:00"),
    "pivot": 2629800000
    }
    }]
    }
    }
    },
    {
    "$limit": 6
    },
    {
    "$project": {
    "_id": 0,
    "title": 1,
    "released": 1,
    "genres": 1,
    "score": { "$meta": "searchScore" }
    }
    }
    ])
    3.

  2. Chạy các truy vấn tổng hợp tìm kiếm Atlas đối với trường

    db.movies.aggregate([
    {
    "$search": {
    "compound": {
    "must": [{
    "range": {
    "path": "released",
    "gt": ISODate("2015-01-01T00:00:00.000Z"),
    "lt": ISODate("2015-12-31T00:00:00.000Z")
    }
    }],
    "should": [{
    "near": {
    "path": "released",
    "origin": ISODate("2015-07-01T00:00:00.000+00:00"),
    "pivot": 2629800000
    }
    }]
    }
    }
    },
    {
    "$limit": 6
    },
    {
    "$project": {
    "_id": 0,
    "title": 1,
    "released": 1,
    "genres": 1,
    "score": { "$meta": "searchScore" }
    }
    }
    ])
    4 trong bộ sưu tập
    db.movies.aggregate([
    {
    "$search": {
    "compound": {
    "must": [{
    "range": {
    "path": "released",
    "gt": ISODate("2015-01-01T00:00:00.000Z"),
    "lt": ISODate("2015-12-31T00:00:00.000Z")
    }
    }],
    "should": [{
    "near": {
    "path": "released",
    "origin": ISODate("2015-07-01T00:00:00.000+00:00"),
    "pivot": 2629800000
    }
    }]
    }
    }
    },
    {
    "$limit": 6
    },
    {
    "$project": {
    "_id": 0,
    "title": 1,
    "released": 1,
    "genres": 1,
    "score": { "$meta": "searchScore" }
    }
    }
    ])
    3.

Trước khi bạn bắt đầu, hãy đảm bảo rằng cụm Atlas của bạn đáp ứng các yêu cầu được mô tả trong các điều kiện tiên quyết.

Trong phần này, chúng tôi tạo một chỉ mục tìm kiếm ATLAS sử dụng ánh xạ động để lập chỉ mục các trường trong bộ sưu tập

db.movies.aggregate([
{
"$search": {
"compound": {
"must": [{
"range": {
"path": "released",
"gt": ISODate("2015-01-01T00:00:00.000Z"),
"lt": ISODate("2015-12-31T00:00:00.000Z")
}
}],
"should": [{
"near": {
"path": "released",
"origin": ISODate("2015-07-01T00:00:00.000+00:00"),
"pivot": 2629800000
}
}]
}
}
},
{
"$limit": 6
},
{
"$project": {
"_id": 0,
"title": 1,
"released": 1,
"genres": 1,
"score": { "$meta": "searchScore" }
}
}
])
3.

  1. Nếu nó chưa được hiển thị, hãy chọn tổ chức chứa dự án mong muốn của bạn từ menu tổ chức trong thanh điều hướng.Organizations menu in the navigation bar.Organizations menu in the navigation bar.

  2. Nếu nó chưa được hiển thị, hãy chọn dự án mong muốn của bạn từ menu Dự án trong thanh điều hướng.Projects menu in the navigation bar.Projects menu in the navigation bar.

  3. Nhấp vào tên cụm của bạn.

  4. Nhấp vào tab Tìm kiếm.Search tab.Search tab.

  • Để có trải nghiệm có hướng dẫn, chọn Trình chỉnh sửa trực quan.Visual Editor.Visual Editor.

  • Để chỉnh sửa định nghĩa chỉ số thô, chọn Trình chỉnh sửa JSON.JSON Editor.JSON Editor.

  1. Trong trường Tên chỉ mục, nhập

    db.movies.aggregate([
    {
    "$search": {
    "compound": {
    "must": [{
    "range": {
    "path": "released",
    "gt": ISODate("2015-01-01T00:00:00.000Z"),
    "lt": ISODate("2015-12-31T00:00:00.000Z")
    }
    }],
    "should": [{
    "near": {
    "path": "released",
    "origin": ISODate("2015-07-01T00:00:00.000+00:00"),
    "pivot": 2629800000
    }
    }]
    }
    }
    },
    {
    "$limit": 6
    },
    {
    "$project": {
    "_id": 0,
    "title": 1,
    "released": 1,
    "genres": 1,
    "score": { "$meta": "searchScore" }
    }
    }
    ])
    1.Index Name field, enter
    db.movies.aggregate([
    {
    "$search": {
    "compound": {
    "must": [{
    "range": {
    "path": "released",
    "gt": ISODate("2015-01-01T00:00:00.000Z"),
    "lt": ISODate("2015-12-31T00:00:00.000Z")
    }
    }],
    "should": [{
    "near": {
    "path": "released",
    "origin": ISODate("2015-07-01T00:00:00.000+00:00"),
    "pivot": 2629800000
    }
    }]
    }
    }
    },
    {
    "$limit": 6
    },
    {
    "$project": {
    "_id": 0,
    "title": 1,
    "released": 1,
    "genres": 1,
    "score": { "$meta": "searchScore" }
    }
    }
    ])
    1.Index Name field, enter
    db.movies.aggregate([
    {
    "$search": {
    "compound": {
    "must": [{
    "range": {
    "path": "released",
    "gt": ISODate("2015-01-01T00:00:00.000Z"),
    "lt": ISODate("2015-12-31T00:00:00.000Z")
    }
    }],
    "should": [{
    "near": {
    "path": "released",
    "origin": ISODate("2015-07-01T00:00:00.000+00:00"),
    "pivot": 2629800000
    }
    }]
    }
    }
    },
    {
    "$limit": 6
    },
    {
    "$project": {
    "_id": 0,
    "title": 1,
    "released": 1,
    "genres": 1,
    "score": { "$meta": "searchScore" }
    }
    }
    ])
    1.

    Ghi chú

    Nếu bạn đặt tên cho chỉ mục của mình

    db.movies.aggregate([
    {
    "$search": {
    "compound": {
    "must": [{
    "range": {
    "path": "released",
    "gt": ISODate("2015-01-01T00:00:00.000Z"),
    "lt": ISODate("2015-12-31T00:00:00.000Z")
    }
    }],
    "should": [{
    "near": {
    "path": "released",
    "origin": ISODate("2015-07-01T00:00:00.000+00:00"),
    "pivot": 2629800000
    }
    }]
    }
    }
    },
    {
    "$limit": 6
    },
    {
    "$project": {
    "_id": 0,
    "title": 1,
    "released": 1,
    "genres": 1,
    "score": { "$meta": "searchScore" }
    }
    }
    ])
    1, bạn không cần chỉ định tham số
    db.movies.aggregate([
    {
    "$search": {
    "compound": {
    "must": [{
    "range": {
    "path": "released",
    "gt": ISODate("2015-01-01T00:00:00.000Z"),
    "lt": ISODate("2015-12-31T00:00:00.000Z")
    }
    }],
    "should": [{
    "near": {
    "path": "released",
    "origin": ISODate("2015-07-01T00:00:00.000+00:00"),
    "pivot": 2629800000
    }
    }]
    }
    }
    },
    {
    "$limit": 6
    },
    {
    "$project": {
    "_id": 0,
    "title": 1,
    "released": 1,
    "genres": 1,
    "score": { "$meta": "searchScore" }
    }
    }
    ])
    3 khi sử dụng giai đoạn đường ống tìm kiếm $. Mặt khác, bạn phải chỉ định tên chỉ mục bằng tham số
    db.movies.aggregate([
    {
    "$search": {
    "compound": {
    "must": [{
    "range": {
    "path": "released",
    "gt": ISODate("2015-01-01T00:00:00.000Z"),
    "lt": ISODate("2015-12-31T00:00:00.000Z")
    }
    }],
    "should": [{
    "near": {
    "path": "released",
    "origin": ISODate("2015-07-01T00:00:00.000+00:00"),
    "pivot": 2629800000
    }
    }]
    }
    }
    },
    {
    "$limit": 6
    },
    {
    "$project": {
    "_id": 0,
    "title": 1,
    "released": 1,
    "genres": 1,
    "score": { "$meta": "searchScore" }
    }
    }
    ])
    3.
  2. Trong phần cơ sở dữ liệu và bộ sưu tập, tìm cơ sở dữ liệu

    db.movies.aggregate([
    {
    "$search": {
    "compound": {
    "must": [{
    "range": {
    "path": "released",
    "gt": ISODate("2015-01-01T00:00:00.000Z"),
    "lt": ISODate("2015-12-31T00:00:00.000Z")
    }
    }],
    "should": [{
    "near": {
    "path": "released",
    "origin": ISODate("2015-07-01T00:00:00.000+00:00"),
    "pivot": 2629800000
    }
    }]
    }
    }
    },
    {
    "$limit": 6
    },
    {
    "$project": {
    "_id": 0,
    "title": 1,
    "released": 1,
    "genres": 1,
    "score": { "$meta": "searchScore" }
    }
    }
    ])
    5 và chọn bộ sưu tập
    db.movies.aggregate([
    {
    "$search": {
    "compound": {
    "must": [{
    "range": {
    "path": "released",
    "gt": ISODate("2015-01-01T00:00:00.000Z"),
    "lt": ISODate("2015-12-31T00:00:00.000Z")
    }
    }],
    "should": [{
    "near": {
    "path": "released",
    "origin": ISODate("2015-07-01T00:00:00.000+00:00"),
    "pivot": 2629800000
    }
    }]
    }
    }
    },
    {
    "$limit": 6
    },
    {
    "$project": {
    "_id": 0,
    "title": 1,
    "released": 1,
    "genres": 1,
    "score": { "$meta": "searchScore" }
    }
    }
    ])
    6.Database and Collection section, find the
    db.movies.aggregate([
    {
    "$search": {
    "compound": {
    "must": [{
    "range": {
    "path": "released",
    "gt": ISODate("2015-01-01T00:00:00.000Z"),
    "lt": ISODate("2015-12-31T00:00:00.000Z")
    }
    }],
    "should": [{
    "near": {
    "path": "released",
    "origin": ISODate("2015-07-01T00:00:00.000+00:00"),
    "pivot": 2629800000
    }
    }]
    }
    }
    },
    {
    "$limit": 6
    },
    {
    "$project": {
    "_id": 0,
    "title": 1,
    "released": 1,
    "genres": 1,
    "score": { "$meta": "searchScore" }
    }
    }
    ])
    5 database, and select the
    db.movies.aggregate([
    {
    "$search": {
    "compound": {
    "must": [{
    "range": {
    "path": "released",
    "gt": ISODate("2015-01-01T00:00:00.000Z"),
    "lt": ISODate("2015-12-31T00:00:00.000Z")
    }
    }],
    "should": [{
    "near": {
    "path": "released",
    "origin": ISODate("2015-07-01T00:00:00.000+00:00"),
    "pivot": 2629800000
    }
    }]
    }
    }
    },
    {
    "$limit": 6
    },
    {
    "$project": {
    "_id": 0,
    "title": 1,
    "released": 1,
    "genres": 1,
    "score": { "$meta": "searchScore" }
    }
    }
    ])
    6 collection.Database and Collection section, find the
    db.movies.aggregate([
    {
    "$search": {
    "compound": {
    "must": [{
    "range": {
    "path": "released",
    "gt": ISODate("2015-01-01T00:00:00.000Z"),
    "lt": ISODate("2015-12-31T00:00:00.000Z")
    }
    }],
    "should": [{
    "near": {
    "path": "released",
    "origin": ISODate("2015-07-01T00:00:00.000+00:00"),
    "pivot": 2629800000
    }
    }]
    }
    }
    },
    {
    "$limit": 6
    },
    {
    "$project": {
    "_id": 0,
    "title": 1,
    "released": 1,
    "genres": 1,
    "score": { "$meta": "searchScore" }
    }
    }
    ])
    5 database, and select the
    db.movies.aggregate([
    {
    "$search": {
    "compound": {
    "must": [{
    "range": {
    "path": "released",
    "gt": ISODate("2015-01-01T00:00:00.000Z"),
    "lt": ISODate("2015-12-31T00:00:00.000Z")
    }
    }],
    "should": [{
    "near": {
    "path": "released",
    "origin": ISODate("2015-07-01T00:00:00.000+00:00"),
    "pivot": 2629800000
    }
    }]
    }
    }
    },
    {
    "$limit": 6
    },
    {
    "$project": {
    "_id": 0,
    "title": 1,
    "released": 1,
    "genres": 1,
    "score": { "$meta": "searchScore" }
    }
    }
    ])
    6 collection.

Bạn có thể tạo một chỉ mục tìm kiếm ATLAS sử dụng ánh xạ động thông qua trình chỉnh sửa trực quan hoặc trình chỉnh sửa JSON trong giao diện người dùng Atlas. Định nghĩa chỉ số sau đây chỉ số các trường của các loại được hỗ trợ trong bộ sưu tập

db.movies.aggregate([
{
"$search": {
"compound": {
"must": [{
"range": {
"path": "released",
"gt": ISODate("2015-01-01T00:00:00.000Z"),
"lt": ISODate("2015-12-31T00:00:00.000Z")
}
}],
"should": [{
"near": {
"path": "released",
"origin": ISODate("2015-07-01T00:00:00.000+00:00"),
"pivot": 2629800000
}
}]
}
}
},
{
"$limit": 6
},
{
"$project": {
"_id": 0,
"title": 1,
"released": 1,
"genres": 1,
"score": { "$meta": "searchScore" }
}
}
])
6.Visual Editor or JSON Editor in the Atlas User Interface. The following index definition dynamically indexes the fields of supported types in the
db.movies.aggregate([
{
"$search": {
"compound": {
"must": [{
"range": {
"path": "released",
"gt": ISODate("2015-01-01T00:00:00.000Z"),
"lt": ISODate("2015-12-31T00:00:00.000Z")
}
}],
"should": [{
"near": {
"path": "released",
"origin": ISODate("2015-07-01T00:00:00.000+00:00"),
"pivot": 2629800000
}
}]
}
}
},
{
"$limit": 6
},
{
"$project": {
"_id": 0,
"title": 1,
"released": 1,
"genres": 1,
"score": { "$meta": "searchScore" }
}
}
])
6 collection.Visual Editor or JSON Editor in the Atlas User Interface. The following index definition dynamically indexes the fields of supported types in the
db.movies.aggregate([
{
"$search": {
"compound": {
"must": [{
"range": {
"path": "released",
"gt": ISODate("2015-01-01T00:00:00.000Z"),
"lt": ISODate("2015-12-31T00:00:00.000Z")
}
}],
"should": [{
"near": {
"path": "released",
"origin": ISODate("2015-07-01T00:00:00.000+00:00"),
"pivot": 2629800000
}
}]
}
}
},
{
"$limit": 6
},
{
"$project": {
"_id": 0,
"title": 1,
"released": 1,
"genres": 1,
"score": { "$meta": "searchScore" }
}
}
])
6 collection.
  1. Nhấn tiếp.Next.Next.

  2. Xem lại định nghĩa chỉ số

    db.movies.aggregate([
    {
    "$search": {
    "compound": {
    "must": [{
    "range": {
    "path": "released",
    "gt": ISODate("2015-01-01T00:00:00.000Z"),
    "lt": ISODate("2015-12-31T00:00:00.000Z")
    }
    }],
    "should": [{
    "near": {
    "path": "released",
    "origin": ISODate("2015-07-01T00:00:00.000+00:00"),
    "pivot": 2629800000
    }
    }]
    }
    }
    },
    {
    "$limit": 6
    },
    {
    "$project": {
    "_id": 0,
    "title": 1,
    "released": 1,
    "genres": 1,
    "score": { "$meta": "searchScore" }
    }
    }
    ])
    8 cho bộ sưu tập
    db.movies.aggregate([
    {
    "$search": {
    "compound": {
    "must": [{
    "range": {
    "path": "released",
    "gt": ISODate("2015-01-01T00:00:00.000Z"),
    "lt": ISODate("2015-12-31T00:00:00.000Z")
    }
    }],
    "should": [{
    "near": {
    "path": "released",
    "origin": ISODate("2015-07-01T00:00:00.000+00:00"),
    "pivot": 2629800000
    }
    }]
    }
    }
    },
    {
    "$limit": 6
    },
    {
    "$project": {
    "_id": 0,
    "title": 1,
    "released": 1,
    "genres": 1,
    "score": { "$meta": "searchScore" }
    }
    }
    ])
    6.
  1. Nhấn tiếp.Next.Next.

  2. Xem lại định nghĩa chỉ số

    db.movies.aggregate([
    {
    "$search": {
    "compound": {
    "must": [{
    "range": {
    "path": "released",
    "gt": ISODate("2015-01-01T00:00:00.000Z"),
    "lt": ISODate("2015-12-31T00:00:00.000Z")
    }
    }],
    "should": [{
    "near": {
    "path": "released",
    "origin": ISODate("2015-07-01T00:00:00.000+00:00"),
    "pivot": 2629800000
    }
    }]
    }
    }
    },
    {
    "$limit": 6
    },
    {
    "$project": {
    "_id": 0,
    "title": 1,
    "released": 1,
    "genres": 1,
    "score": { "$meta": "searchScore" }
    }
    }
    ])
    8 cho bộ sưu tập
    db.movies.aggregate([
    {
    "$search": {
    "compound": {
    "must": [{
    "range": {
    "path": "released",
    "gt": ISODate("2015-01-01T00:00:00.000Z"),
    "lt": ISODate("2015-12-31T00:00:00.000Z")
    }
    }],
    "should": [{
    "near": {
    "path": "released",
    "origin": ISODate("2015-07-01T00:00:00.000+00:00"),
    "pivot": 2629800000
    }
    }]
    }
    }
    },
    {
    "$limit": 6
    },
    {
    "$project": {
    "_id": 0,
    "title": 1,
    "released": 1,
    "genres": 1,
    "score": { "$meta": "searchScore" }
    }
    }
    ])
    6.

    Xem lại định nghĩa chỉ số.

    db.movies.aggregate([
    {
    "$search": {
    "compound": {
    "must": [{
    "range": {
    "path": "released",
    "gt": ISODate("2015-01-01T00:00:00.000Z"),
    "lt": ISODate("2015-12-31T00:00:00.000Z")
    }
    }],
    "should": [{
    "near": {
    "path": "released",
    "origin": ISODate("2015-07-01T00:00:00.000+00:00"),
    "pivot": 2629800000
    }
    }]
    }
    }
    },
    {
    "$limit": 6
    },
    {
    "$project": {
    "_id": 0,
    "title": 1,
    "released": 1,
    "genres": 1,
    "score": { "$meta": "searchScore" }
    }
    }
    ])
    5

    Định nghĩa chỉ số của bạn sẽ trông tương tự như sau:

  3. Nhấn tiếp.Next.Next.

Xem lại định nghĩa chỉ số

db.movies.aggregate([
{
"$search": {
"compound": {
"must": [{
"range": {
"path": "released",
"gt": ISODate("2015-01-01T00:00:00.000Z"),
"lt": ISODate("2015-12-31T00:00:00.000Z")
}
}],
"should": [{
"near": {
"path": "released",
"origin": ISODate("2015-07-01T00:00:00.000+00:00"),
"pivot": 2629800000
}
}]
}
}
},
{
"$limit": 6
},
{
"$project": {
"_id": 0,
"title": 1,
"released": 1,
"genres": 1,
"score": { "$meta": "searchScore" }
}
}
])
8 cho bộ sưu tập
db.movies.aggregate([
{
"$search": {
"compound": {
"must": [{
"range": {
"path": "released",
"gt": ISODate("2015-01-01T00:00:00.000Z"),
"lt": ISODate("2015-12-31T00:00:00.000Z")
}
}],
"should": [{
"near": {
"path": "released",
"origin": ISODate("2015-07-01T00:00:00.000+00:00"),
"pivot": 2629800000
}
}]
}
}
},
{
"$limit": 6
},
{
"$project": {
"_id": 0,
"title": 1,
"released": 1,
"genres": 1,
"score": { "$meta": "searchScore" }
}
}
])
6.Close button.

Xem lại định nghĩa chỉ số.Status column reads

Định nghĩa chỉ số của bạn sẽ trông tương tự như sau:Status column reads
db.movies.aggregate([
{
"$search": {
"compound": {
"must": [{
"range": {
"path": "released",
"gt": ISODate("2015-01-01T00:00:00.000Z"),
"lt": ISODate("2015-12-31T00:00:00.000Z")
}
}],
"should": [{
"near": {
"path": "released",
"origin": ISODate("2015-07-01T00:00:00.000+00:00"),
"pivot": 2629800000
}
}]
}
}
},
{
"$limit": 6
},
{
"$project": {
"_id": 0,
"title": 1,
"released": 1,
"genres": 1,
"score": { "$meta": "searchScore" }
}
}
])
82.

Định nghĩa chỉ số của bạn sẽ trông tương tự như sau:

db.movies.aggregate([
{
"$search": {
"compound": {
"must": [{
"range": {
"path": "released",
"gt": ISODate("2015-01-01T00:00:00.000Z"),
"lt": ISODate("2015-12-31T00:00:00.000Z")
}
}],
"should": [{
"near": {
"path": "released",
"origin": ISODate("2015-07-01T00:00:00.000+00:00"),
"pivot": 2629800000
}
}]
}
}
},
{
"$limit": 6
},
{
"$project": {
"_id": 0,
"title": 1,
"released": 1,
"genres": 1,
"score": { "$meta": "searchScore" }
}
}
])
8 cho bộ sưu tập
db.movies.aggregate([
{
"$search": {
"compound": {
"must": [{
"range": {
"path": "released",
"gt": ISODate("2015-01-01T00:00:00.000Z"),
"lt": ISODate("2015-12-31T00:00:00.000Z")
}
}],
"should": [{
"near": {
"path": "released",
"origin": ISODate("2015-07-01T00:00:00.000+00:00"),
"pivot": 2629800000
}
}]
}
}
},
{
"$limit": 6
},
{
"$project": {
"_id": 0,
"title": 1,
"released": 1,
"genres": 1,
"score": { "$meta": "searchScore" }
}
}
])
6.Close button.

Xem lại định nghĩa chỉ số.Status column reads
db.movies.aggregate([
{
"$search": {
"compound": {
"must": [{
"range": {
"path": "released",
"gt": ISODate("2015-01-01T00:00:00.000Z"),
"lt": ISODate("2015-12-31T00:00:00.000Z")
}
}],
"should": [{
"near": {
"path": "released",
"origin": ISODate("2015-07-01T00:00:00.000+00:00"),
"pivot": 2629800000
}
}]
}
}
},
{
"$limit": 6
},
{
"$project": {
"_id": 0,
"title": 1,
"released": 1,
"genres": 1,
"score": { "$meta": "searchScore" }
}
}
])
85
prompt:

db.movies.aggregate([
{
"$search": {
"compound": {
"must": [{
"range": {
"path": "released",
"gt": ISODate("2015-01-01T00:00:00.000Z"),
"lt": ISODate("2015-12-31T00:00:00.000Z")
}
}],
"should": [{
"near": {
"path": "released",
"origin": ISODate("2015-07-01T00:00:00.000+00:00"),
"pivot": 2629800000
}
}]
}
}
},
{
"$limit": 6
},
{
"$project": {
"_id": 0,
"title": 1,
"released": 1,
"genres": 1,
"score": { "$meta": "searchScore" }
}
}
])
81. When it is finished building, the Status column reads
db.movies.aggregate([
{
"$search": {
"compound": {
"must": [{
"range": {
"path": "released",
"gt": ISODate("2015-01-01T00:00:00.000Z"),
"lt": ISODate("2015-12-31T00:00:00.000Z")
}
}],
"should": [{
"near": {
"path": "released",
"origin": ISODate("2015-07-01T00:00:00.000+00:00"),
"pivot": 2629800000
}
}]
}
}
},
{
"$limit": 6
},
{
"$project": {
"_id": 0,
"title": 1,
"released": 1,
"genres": 1,
"score": { "$meta": "searchScore" }
}
}
])
82.

  • Định nghĩa chỉ số trên chỉ số các trường của các loại được hỗ trợ trong mỗi tài liệu trong bộ sưu tập

    db.movies.aggregate([
    {
    "$search": {
    "compound": {
    "must": [{
    "range": {
    "path": "released",
    "gt": ISODate("2015-01-01T00:00:00.000Z"),
    "lt": ISODate("2015-12-31T00:00:00.000Z")
    }
    }],
    "should": [{
    "near": {
    "path": "released",
    "origin": ISODate("2015-07-01T00:00:00.000+00:00"),
    "pivot": 2629800000
    }
    }]
    }
    }
    },
    {
    "$limit": 6
    },
    {
    "$project": {
    "_id": 0,
    "title": 1,
    "released": 1,
    "genres": 1,
    "score": { "$meta": "searchScore" }
    }
    }
    ])
    6.
    db.movies.aggregate([
    {
    "$search": {
    "compound": {
    "must": [{
    "range": {
    "path": "released",
    "gt": ISODate("2015-01-01T00:00:00.000Z"),
    "lt": ISODate("2015-12-31T00:00:00.000Z")
    }
    }],
    "should": [{
    "near": {
    "path": "released",
    "origin": ISODate("2015-07-01T00:00:00.000+00:00"),
    "pivot": 2629800000
    }
    }]
    }
    }
    },
    {
    "$limit": 6
    },
    {
    "$project": {
    "_id": 0,
    "title": 1,
    "released": 1,
    "genres": 1,
    "score": { "$meta": "searchScore" }
    }
    }
    ])
    85 prompt:
  • Một cửa sổ phương thức dường như cho bạn biết chỉ mục của bạn đang xây dựng. Nhấp vào nút Đóng.

Chỉ số sẽ mất khoảng một phút để xây dựng. Trong khi nó đang xây dựng, cột trạng thái đọc

db.movies.aggregate([
{
"$search": {
"compound": {
"must": [{
"range": {
"path": "released",
"gt": ISODate("2015-01-01T00:00:00.000Z"),
"lt": ISODate("2015-12-31T00:00:00.000Z")
}
}],
"should": [{
"near": {
"path": "released",
"origin": ISODate("2015-07-01T00:00:00.000+00:00"),
"pivot": 2629800000
}
}]
}
}
},
{
"$limit": 6
},
{
"$project": {
"_id": 0,
"title": 1,
"released": 1,
"genres": 1,
"score": { "$meta": "searchScore" }
}
}
])
81. Khi nó được xây dựng xong, cột trạng thái đọc
db.movies.aggregate([
{
"$search": {
"compound": {
"must": [{
"range": {
"path": "released",
"gt": ISODate("2015-01-01T00:00:00.000Z"),
"lt": ISODate("2015-12-31T00:00:00.000Z")
}
}],
"should": [{
"near": {
"path": "released",
"origin": ISODate("2015-07-01T00:00:00.000+00:00"),
"pivot": 2629800000
}
}]
}
}
},
{
"$limit": 6
},
{
"$project": {
"_id": 0,
"title": 1,
"released": 1,
"genres": 1,
"score": { "$meta": "searchScore" }
}
}
])
82.
db.movies.aggregate([
{
"$search": {
"compound": {
"must": [{
"range": {
"path": "released",
"gt": ISODate("2015-01-01T00:00:00.000Z"),
"lt": ISODate("2015-12-31T00:00:00.000Z")
}
}],
"should": [{
"near": {
"path": "released",
"origin": ISODate("2015-07-01T00:00:00.000+00:00"),
"pivot": 2629800000
}
}]
}
}
},
{
"$limit": 6
},
{
"$project": {
"_id": 0,
"title": 1,
"released": 1,
"genres": 1,
"score": { "$meta": "searchScore" }
}
}
])
54
stage to limit the output to 6 results and a
db.movies.aggregate([
{
"$search": {
"compound": {
"must": [{
"range": {
"path": "released",
"gt": ISODate("2015-01-01T00:00:00.000Z"),
"lt": ISODate("2015-12-31T00:00:00.000Z")
}
}],
"should": [{
"near": {
"path": "released",
"origin": ISODate("2015-07-01T00:00:00.000+00:00"),
"pivot": 2629800000
}
}]
}
}
},
{
"$limit": 6
},
{
"$project": {
"_id": 0,
"title": 1,
"released": 1,
"genres": 1,
"score": { "$meta": "searchScore" }
}
}
])
55
stage to:
  • Bạn có thể sử dụng toán tử ghép để kết hợp hai hoặc nhiều toán tử và mệnh đề thành một truy vấn duy nhất. Hướng dẫn này sử dụng các điều khoản của toán tử hỗn hợp để tìm kiếm phim trong phạm vi ngày được chỉ định. Trong phần này, kết nối với cụm Atlas của bạn và chạy các truy vấn mẫu bằng toán tử ghép vào trường

    db.movies.aggregate([
    {
    "$search": {
    "compound": {
    "must": [{
    "range": {
    "path": "released",
    "gt": ISODate("2015-01-01T00:00:00.000Z"),
    "lt": ISODate("2015-12-31T00:00:00.000Z")
    }
    }],
    "should": [{
    "near": {
    "path": "released",
    "origin": ISODate("2015-07-01T00:00:00.000+00:00"),
    "pivot": 2629800000
    }
    }]
    }
    }
    },
    {
    "$limit": 6
    },
    {
    "$project": {
    "_id": 0,
    "title": 1,
    "released": 1,
    "genres": 1,
    "score": { "$meta": "searchScore" }
    }
    }
    ])
    4 trong bộ sưu tập
    db.movies.aggregate([
    {
    "$search": {
    "compound": {
    "must": [{
    "range": {
    "path": "released",
    "gt": ISODate("2015-01-01T00:00:00.000Z"),
    "lt": ISODate("2015-12-31T00:00:00.000Z")
    }
    }],
    "should": [{
    "near": {
    "path": "released",
    "origin": ISODate("2015-07-01T00:00:00.000+00:00"),
    "pivot": 2629800000
    }
    }]
    }
    }
    },
    {
    "$limit": 6
    },
    {
    "$project": {
    "_id": 0,
    "title": 1,
    "released": 1,
    "genres": 1,
    "score": { "$meta": "searchScore" }
    }
    }
    ])
    3.

    Chạy lệnh sau tại lời nhắc
  • db.movies.aggregate([
    {
    "$search": {
    "compound": {
    "must": [{
    "range": {
    "path": "released",
    "gt": ISODate("2015-01-01T00:00:00.000Z"),
    "lt": ISODate("2015-12-31T00:00:00.000Z")
    }
    }],
    "should": [{
    "near": {
    "path": "released",
    "origin": ISODate("2015-07-01T00:00:00.000+00:00"),
    "pivot": 2629800000
    }
    }]
    }
    }
    },
    {
    "$limit": 6
    },
    {
    "$project": {
    "_id": 0,
    "title": 1,
    "released": 1,
    "genres": 1,
    "score": { "$meta": "searchScore" }
    }
    }
    ])
    85:
    db.movies.aggregate([
    {
    "$search": {
    "compound": {
    "must": [{
    "range": {
    "path": "released",
    "gt": ISODate("2015-01-01T00:00:00.000Z"),
    "lt": ISODate("2015-12-31T00:00:00.000Z")
    }
    }],
    "should": [{
    "near": {
    "path": "released",
    "origin": ISODate("2015-07-01T00:00:00.000+00:00"),
    "pivot": 2629800000
    }
    }]
    }
    }
    },
    {
    "$limit": 6
    },
    {
    "$project": {
    "_id": 0,
    "title": 1,
    "released": 1,
    "genres": 1,
    "score": { "$meta": "searchScore" }
    }
    }
    ])
    54 stage to limit the output to 6 results and a
    db.movies.aggregate([
    {
    "$search": {
    "compound": {
    "must": [{
    "range": {
    "path": "released",
    "gt": ISODate("2015-01-01T00:00:00.000Z"),
    "lt": ISODate("2015-12-31T00:00:00.000Z")
    }
    }],
    "should": [{
    "near": {
    "path": "released",
    "origin": ISODate("2015-07-01T00:00:00.000+00:00"),
    "pivot": 2629800000
    }
    }]
    }
    }
    },
    {
    "$limit": 6
    },
    {
    "$project": {
    "_id": 0,
    "title": 1,
    "released": 1,
    "genres": 1,
    "score": { "$meta": "searchScore" }
    }
    }
    ])
    55 stage to:

    Các ví dụ sau đây sử dụng toán tử
db.movies.aggregate([
{
"$search": {
"compound": {
"must": [{
"range": {
"path": "released",
"gt": ISODate("2015-01-01T00:00:00.000Z"),
"lt": ISODate("2015-12-31T00:00:00.000Z")
}
}],
"should": [{
"near": {
"path": "released",
"origin": ISODate("2015-07-01T00:00:00.000+00:00"),
"pivot": 2629800000
}
}]
}
}
},
{
"$limit": 6
},
{
"$project": {
"_id": 0,
"title": 1,
"released": 1,
"genres": 1,
"score": { "$meta": "searchScore" }
}
}
])

db.movies.aggregate([
{
"$search": {
"compound": {
"must": [{
"range": {
"path": "released",
"gt": ISODate("2015-01-01T00:00:00.000Z"),
"lt": ISODate("2015-12-31T00:00:00.000Z")
}
}],
"should": [{
"near": {
"path": "released",
"origin": ISODate("2015-07-01T00:00:00.000+00:00"),
"pivot": 2629800000
}
}]
}
}
},
{
"$limit": 6
},
{
"$project": {
"_id": 0,
"title": 1,
"released": 1,
"genres": 1,
"score": { "$meta": "searchScore" }
}
}
])
85:
db.movies.aggregate([
{
"$search": {
"compound": {
"must": [{
"range": {
"path": "released",
"gt": ISODate("2015-01-01T00:00:00.000Z"),
"lt": ISODate("2015-12-31T00:00:00.000Z")
}
}],
"should": [{
"near": {
"path": "released",
"origin": ISODate("2015-07-01T00:00:00.000+00:00"),
"pivot": 2629800000
}
}]
}
}
},
{
"$limit": 6
},
{
"$project": {
"_id": 0,
"title": 1,
"released": 1,
"genres": 1,
"score": { "$meta": "searchScore" }
}
}
])
54 stage to limit the output to 6 results and a
db.movies.aggregate([
{
"$search": {
"compound": {
"must": [{
"range": {
"path": "released",
"gt": ISODate("2015-01-01T00:00:00.000Z"),
"lt": ISODate("2015-12-31T00:00:00.000Z")
}
}],
"should": [{
"near": {
"path": "released",
"origin": ISODate("2015-07-01T00:00:00.000+00:00"),
"pivot": 2629800000
}
}]
}
}
},
{
"$limit": 6
},
{
"$project": {
"_id": 0,
"title": 1,
"released": 1,
"genres": 1,
"score": { "$meta": "searchScore" }
}
}
])
55 stage to:

Các ví dụ sau đây sử dụng toán tử

db.movies.aggregate([
{
"$search": {
"compound": {
"must": [{
"range": {
"path": "released",
"gt": ISODate("2015-01-01T00:00:00.000Z"),
"lt": ISODate("2015-12-31T00:00:00.000Z")
}
}],
"should": [{
"near": {
"path": "released",
"origin": ISODate("2015-07-01T00:00:00.000+00:00"),
"pivot": 2629800000
}
}]
}
}
},
{
"$limit": 6
},
{
"$project": {
"_id": 0,
"title": 1,
"released": 1,
"genres": 1,
"score": { "$meta": "searchScore" }
}
}
])
86 với các nhóm phụ để tìm kiếm phim giữa các năm
db.movies.aggregate([
{
"$search": {
"compound": {
"must": [{
"range": {
"path": "released",
"gt": ISODate("2015-01-01T00:00:00.000Z"),
"lt": ISODate("2015-12-31T00:00:00.000Z")
}
}],
"should": [{
"near": {
"path": "released",
"origin": ISODate("2015-07-01T00:00:00.000+00:00"),
"pivot": 2629800000
}
}]
}
}
},
{
"$limit": 6
},
{
"$project": {
"_id": 0,
"title": 1,
"released": 1,
"genres": 1,
"score": { "$meta": "searchScore" }
}
}
])
87 đến
db.movies.aggregate([
{
"$search": {
"compound": {
"must": [{
"range": {
"path": "released",
"gt": ISODate("2015-01-01T00:00:00.000Z"),
"lt": ISODate("2015-12-31T00:00:00.000Z")
}
}],
"should": [{
"near": {
"path": "released",
"origin": ISODate("2015-07-01T00:00:00.000+00:00"),
"pivot": 2629800000
}
}]
}
}
},
{
"$limit": 6
},
{
"$project": {
"_id": 0,
"title": 1,
"released": 1,
"genres": 1,
"score": { "$meta": "searchScore" }
}
}
])
88. Truy vấn sử dụng các điều khoản sau:

Điều khoản

db.movies.aggregate([
{
"$search": {
"compound": {
"must": [{
"range": {
"path": "released",
"gt": ISODate("2015-01-01T00:00:00.000Z"),
"lt": ISODate("2015-12-31T00:00:00.000Z")
}
}],
"should": [{
"near": {
"path": "released",
"origin": ISODate("2015-07-01T00:00:00.000+00:00"),
"pivot": 2629800000
}
}]
}
}
},
{
"$limit": 6
},
{
"$project": {
"_id": 0,
"title": 1,
"released": 1,
"genres": 1,
"score": { "$meta": "searchScore" }
}
}
])
89 để tìm kiếm phim được phát hành giữa
db.movies.aggregate([
{
"$search": {
"compound": {
"must": [{
"range": {
"path": "released",
"gt": ISODate("2015-01-01T00:00:00.000Z"),
"lt": ISODate("2015-12-31T00:00:00.000Z")
}
}],
"should": [{
"near": {
"path": "released",
"origin": ISODate("2015-07-01T00:00:00.000+00:00"),
"pivot": 2629800000
}
}]
}
}
},
{
"$limit": 6
},
{
"$project": {
"_id": 0,
"title": 1,
"released": 1,
"genres": 1,
"score": { "$meta": "searchScore" }
}
}
])
50 và
db.movies.aggregate([
{
"$search": {
"compound": {
"must": [{
"range": {
"path": "released",
"gt": ISODate("2015-01-01T00:00:00.000Z"),
"lt": ISODate("2015-12-31T00:00:00.000Z")
}
}],
"should": [{
"near": {
"path": "released",
"origin": ISODate("2015-07-01T00:00:00.000+00:00"),
"pivot": 2629800000
}
}]
}
}
},
{
"$limit": 6
},
{
"$project": {
"_id": 0,
"title": 1,
"released": 1,
"genres": 1,
"score": { "$meta": "searchScore" }
}
}
])
51

db.movies.aggregate([
{
"$search": {
"compound": {
"must": [{
"range": {
"path": "released",
"gt": ISODate("2015-01-01T00:00:00.000Z"),
"lt": ISODate("2015-12-31T00:00:00.000Z")
}
}],
"should": [{
"near": {
"path": "released",
"origin": ISODate("2015-07-01T00:00:00.000+00:00"),
"pivot": 2629800000
}
}]
}
}
},
{
"$limit": 6
},
{
"$project": {
"_id": 0,
"title": 1,
"released": 1,
"genres": 1,
"score": { "$meta": "searchScore" }
}
}
])
52 để chỉ định ưu tiên cho các bộ phim được phát hành gần
db.movies.aggregate([
{
"$search": {
"compound": {
"must": [{
"range": {
"path": "released",
"gt": ISODate("2015-01-01T00:00:00.000Z"),
"lt": ISODate("2015-12-31T00:00:00.000Z")
}
}],
"should": [{
"near": {
"path": "released",
"origin": ISODate("2015-07-01T00:00:00.000+00:00"),
"pivot": 2629800000
}
}]
}
}
},
{
"$limit": 6
},
{
"$project": {
"_id": 0,
"title": 1,
"released": 1,
"genres": 1,
"score": { "$meta": "searchScore" }
}
}
])
53, với khoảng cách xoay là 1 tháng
db.movies.aggregate([
{
"$search": {
"compound": {
"must": [{
"range": {
"path": "released",
"gt": ISODate("2015-01-01T00:00:00.000Z"),
"lt": ISODate("2015-12-31T00:00:00.000Z")
}
}],
"should": [{
"near": {
"path": "released",
"origin": ISODate("2015-07-01T00:00:00.000+00:00"),
"pivot": 2629800000
}
}]
}
}
},
{
"$limit": 6
},
{
"$project": {
"_id": 0,
"title": 1,
"released": 1,
"genres": 1,
"score": { "$meta": "searchScore" }
}
}
])
8
db.movies.aggregate([
{
"$search": {
"compound": {
"must": [{
"range": {
"path": "released",
"gt": ISODate("2015-01-01T00:00:00.000Z"),
"lt": ISODate("2015-12-31T00:00:00.000Z")
}
}],
"should": [{
"near": {
"path": "released",
"origin": ISODate("2015-07-01T00:00:00.000+00:00"),
"pivot": 2629800000
}
}]
}
}
},
{
"$limit": 6
},
{
"$project": {
"_id": 0,
"title": 1,
"released": 1,
"genres": 1,
"score": { "$meta": "searchScore" }
}
}
])
54
stage, and the
db.movies.aggregate([
{
"$search": {
"compound": {
"must": [{
"range": {
"path": "released",
"gt": ISODate("2015-01-01T00:00:00.000Z"),
"lt": ISODate("2015-12-31T00:00:00.000Z")
}
}],
"should": [{
"near": {
"path": "released",
"origin": ISODate("2015-07-01T00:00:00.000+00:00"),
"pivot": 2629800000
}
}]
}
}
},
{
"$limit": 6
},
{
"$project": {
"_id": 0,
"title": 1,
"released": 1,
"genres": 1,
"score": { "$meta": "searchScore" }
}
}
])
55
stages to perform the same search as the previous query. In addition to the
db.movies.aggregate([
{
"$search": {
"compound": {
"must": [{
"range": {
"path": "released",
"gt": ISODate("2015-01-01T00:00:00.000Z"),
"lt": ISODate("2015-12-31T00:00:00.000Z")
}
}],
"should": [{
"near": {
"path": "released",
"origin": ISODate("2015-07-01T00:00:00.000+00:00"),
"pivot": 2629800000
}
}]
}
}
},
{
"$limit": 6
},
{
"$project": {
"_id": 0,
"title": 1,
"released": 1,
"genres": 1,
"score": { "$meta": "searchScore" }
}
}
])
89 and
db.movies.aggregate([
{
"$search": {
"compound": {
"must": [{
"range": {
"path": "released",
"gt": ISODate("2015-01-01T00:00:00.000Z"),
"lt": ISODate("2015-12-31T00:00:00.000Z")
}
}],
"should": [{
"near": {
"path": "released",
"origin": ISODate("2015-07-01T00:00:00.000+00:00"),
"pivot": 2629800000
}
}]
}
}
},
{
"$limit": 6
},
{
"$project": {
"_id": 0,
"title": 1,
"released": 1,
"genres": 1,
"score": { "$meta": "searchScore" }
}
}
])
52 clauses, the query also includes a
db.movies.aggregate([
{
"$search": {
"compound": {
"must": [{
"range": {
"path": "released",
"gt": ISODate("2015-01-01T00:00:00.000Z"),
"lt": ISODate("2015-12-31T00:00:00.000Z")
}
}],
"should": [{
"near": {
"path": "released",
"origin": ISODate("2015-07-01T00:00:00.000+00:00"),
"pivot": 2629800000
}
}]
}
}
},
{
"$limit": 6
},
{
"$project": {
"_id": 0,
"title": 1,
"released": 1,
"genres": 1,
"score": { "$meta": "searchScore" }
}
}
])
56 clause to specify that movies in the
db.movies.aggregate([
{
"$search": {
"compound": {
"must": [{
"range": {
"path": "released",
"gt": ISODate("2015-01-01T00:00:00.000Z"),
"lt": ISODate("2015-12-31T00:00:00.000Z")
}
}],
"should": [{
"near": {
"path": "released",
"origin": ISODate("2015-07-01T00:00:00.000+00:00"),
"pivot": 2629800000
}
}]
}
}
},
{
"$limit": 6
},
{
"$project": {
"_id": 0,
"title": 1,
"released": 1,
"genres": 1,
"score": { "$meta": "searchScore" }
}
}
])
57 genre must not be included in the results.
db.movies.aggregate([
{
"$search": {
"compound": {
"must": [{
"range": {
"path": "released",
"gt": ISODate("2015-01-01T00:00:00.000Z"),
"lt": ISODate("2015-12-31T00:00:00.000Z")
}
}],
"should": [{
"near": {
"path": "released",
"origin": ISODate("2015-07-01T00:00:00.000+00:00"),
"pivot": 2629800000
}
}]
}
}
},
{
"$limit": 6
},
{
"$project": {
"_id": 0,
"title": 1,
"released": 1,
"genres": 1,
"score": { "$meta": "searchScore" }
}
}
])
5

db.movies.aggregate([
{
"$search": {
"compound": {
"must": [{
"range": {
"path": "released",
"gt": ISODate("2015-01-01T00:00:00.000Z"),
"lt": ISODate("2015-12-31T00:00:00.000Z")
}
}],
"should": [{
"near": {
"path": "released",
"origin": ISODate("2015-07-01T00:00:00.000+00:00"),
"pivot": 2629800000
}
}]
}
}
},
{
"$limit": 6
},
{
"$project": {
"_id": 0,
"title": 1,
"released": 1,
"genres": 1,
"score": { "$meta": "searchScore" }
}
}
])
85:
db.movies.aggregate([
{
"$search": {
"compound": {
"must": [{
"range": {
"path": "released",
"gt": ISODate("2015-01-01T00:00:00.000Z"),
"lt": ISODate("2015-12-31T00:00:00.000Z")
}
}],
"should": [{
"near": {
"path": "released",
"origin": ISODate("2015-07-01T00:00:00.000+00:00"),
"pivot": 2629800000
}
}]
}
}
},
{
"$limit": 6
},
{
"$project": {
"_id": 0,
"title": 1,
"released": 1,
"genres": 1,
"score": { "$meta": "searchScore" }
}
}
])
54 stage to limit the output to 6 results and a
db.movies.aggregate([
{
"$search": {
"compound": {
"must": [{
"range": {
"path": "released",
"gt": ISODate("2015-01-01T00:00:00.000Z"),
"lt": ISODate("2015-12-31T00:00:00.000Z")
}
}],
"should": [{
"near": {
"path": "released",
"origin": ISODate("2015-07-01T00:00:00.000+00:00"),
"pivot": 2629800000
}
}]
}
}
},
{
"$limit": 6
},
{
"$project": {
"_id": 0,
"title": 1,
"released": 1,
"genres": 1,
"score": { "$meta": "searchScore" }
}
}
])
55 stage to:

Các ví dụ sau đây sử dụng toán tử

db.movies.aggregate([
{
"$search": {
"compound": {
"must": [{
"range": {
"path": "released",
"gt": ISODate("2015-01-01T00:00:00.000Z"),
"lt": ISODate("2015-12-31T00:00:00.000Z")
}
}],
"should": [{
"near": {
"path": "released",
"origin": ISODate("2015-07-01T00:00:00.000+00:00"),
"pivot": 2629800000
}
}]
}
}
},
{
"$limit": 6
},
{
"$project": {
"_id": 0,
"title": 1,
"released": 1,
"genres": 1,
"score": { "$meta": "searchScore" }
}
}
])
86 với các nhóm phụ để tìm kiếm phim giữa các năm
db.movies.aggregate([
{
"$search": {
"compound": {
"must": [{
"range": {
"path": "released",
"gt": ISODate("2015-01-01T00:00:00.000Z"),
"lt": ISODate("2015-12-31T00:00:00.000Z")
}
}],
"should": [{
"near": {
"path": "released",
"origin": ISODate("2015-07-01T00:00:00.000+00:00"),
"pivot": 2629800000
}
}]
}
}
},
{
"$limit": 6
},
{
"$project": {
"_id": 0,
"title": 1,
"released": 1,
"genres": 1,
"score": { "$meta": "searchScore" }
}
}
])
87 đến
db.movies.aggregate([
{
"$search": {
"compound": {
"must": [{
"range": {
"path": "released",
"gt": ISODate("2015-01-01T00:00:00.000Z"),
"lt": ISODate("2015-12-31T00:00:00.000Z")
}
}],
"should": [{
"near": {
"path": "released",
"origin": ISODate("2015-07-01T00:00:00.000+00:00"),
"pivot": 2629800000
}
}]
}
}
},
{
"$limit": 6
},
{
"$project": {
"_id": 0,
"title": 1,
"released": 1,
"genres": 1,
"score": { "$meta": "searchScore" }
}
}
])
88. Truy vấn sử dụng các điều khoản sau:

db.movies.aggregate([
{
"$search": {
"compound": {
"must": [{
"range": {
"path": "released",
"gt": ISODate("2015-01-01T00:00:00.000Z"),
"lt": ISODate("2015-12-31T00:00:00.000Z")
}
}],
"should": [{
"near": {
"path": "released",
"origin": ISODate("2015-07-01T00:00:00.000+00:00"),
"pivot": 2629800000
}
}]
}
}
},
{
"$limit": 6
},
{
"$project": {
"_id": 0,
"title": 1,
"released": 1,
"genres": 1,
"score": { "$meta": "searchScore" }
}
}
])
54 để giới hạn đầu ra ở 6 ​​kết quả và giai đoạn
db.movies.aggregate([
{
"$search": {
"compound": {
"must": [{
"range": {
"path": "released",
"gt": ISODate("2015-01-01T00:00:00.000Z"),
"lt": ISODate("2015-12-31T00:00:00.000Z")
}
}],
"should": [{
"near": {
"path": "released",
"origin": ISODate("2015-07-01T00:00:00.000+00:00"),
"pivot": 2629800000
}
}]
}
}
},
{
"$limit": 6
},
{
"$project": {
"_id": 0,
"title": 1,
"released": 1,
"genres": 1,
"score": { "$meta": "searchScore" }
}
}
])
55 thành: