MongoDB
 sql >> Base de données >  >> NoSQL >> MongoDB

Requête avec le format de date de chaîne dans mongodb

Vous pouvez essayer les requêtes ci-dessous dans mongodb 3.6 et plus

db.collection.find({
  "$expr": {
    "$gte": [{ "$dateFromString": { "dateString": "$date" }}, start.toDate() ],
    "$lt": [{ "$dateFromString": { "dateString": "$date" }}, end.toDate() ]
  }
}).count()

ou avec agrégation

db.collection.aggregate([
  { "$addFields": {
    "date": {
      "$dateFromString": {
        "dateString": "$date"
      }
    }
  }},
  { "$match": { "date": { "$gte": start.toDate(), "$lt": end.toDate() }}},
  { "$count": "count" }
])