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

Truy vấn chỉ tìm kiếm MongoDB trong những giờ cụ thể

Tôi nghĩ bạn có thể sử dụng $ giờ, $ ngày ... để chia nhỏ ngày trong tổng hợp. Ví dụ:

dữ liệu của tôi:

db.orders.find()
{ "_id" : ObjectId("5760bf21b05d6825e05fa23d"), "item" : "test1", 
          "create_at" : ISODate("2016-04-30T11:00:00Z") }
{ "_id" : ObjectId("5760bf30b05d6825e05fa23e"), "item" : "test2", 
          "create_at" : ISODate("2016-04-30T12:00:00Z") }
{ "_id" : ObjectId("5760bf37b05d6825e05fa23f"), "item" : "test3",  
          "create_at" : ISODate("2016-04-30T13:00:00Z") }

truy vấn của tôi:

db.orders.aggregate([{$project:{hour:{$hour:"$create_at"}}}, 
                 {$match:{hour:{"$in":[11,12]}}}])
{ "_id" : ObjectId("5760bf21b05d6825e05fa23d"), "hour" : 11 }
{ "_id" : ObjectId("5760bf30b05d6825e05fa23e"), "hour" : 12 }

Đây là tài liệu



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Trình phân tích cú pháp BASH BSON

  2. Tài liệu được phân trang bằng Flask MongoEngine với trường hình ảnh

  3. Mongodb - Đặt bản sao ở cấp db hoặc cấp bộ sưu tập

  4. Lỗi kết nối Mongoose khi kết nối với mLab

  5. Không thể kết nối với mongo docker