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

Mảng lồng nhau của $ fitler sử dụng $ lte $ gte

Bạn có thể sử dụng $filter tổng hợp để lọc ra các searches mảng

db.collection.aggregate([
  { "$match": { "username": "admin" }},
  { "$project": {
    "total": { "$size": "$searches" },
    "lasthour": {
      "$size": {
        "$filter": {
          "input": "$searches",
          "as": "search",
          "cond": {
            "$and": [
              { "$gte": ["$$search", onehourago] },
              { "$lte": ["$$search", now] }
            ]
          }
        }
      }
    },
    "today": {
      "$size": {
        "$filter": {
          "input": "$searches",
          "as": "search",
          "cond": {
            "$and": [
              { "$gte": ["$$search", yesterday] },
              { "$lte": ["$$search", now] }
            ]
          }
        }
      }
    }
  }}
])



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Nhận tập hợp tất cả các giá trị duy nhất trong trường mảng

  2. Đối số được chuyển vào phải là một chuỗi 12 byte

  3. Bản đồ PHP MongoDB giảm lỗi xác nhận db

  4. Mongodb không được cập nhật đúng cách từ 4.2 lên 4.4

  5. Xóa một tài liệu con được lồng trong một mảng trong MongoDB