MongoDB
 sql >> Datenbank >  >> NoSQL >> MongoDB

Abfrage eingebetteter Dokumente durch Abgleich von Daten in MongoDB

Sie müssen hier keinen regulären Ausdruck verwenden, etwas Einfacheres wie dieses sollte funktionieren:

db.posts.find({"headers.Date": new Date(2001, 06, 06) })

Dies sollte funktionieren, wenn die Daten, die Sie in der DB gespeichert haben, keine Zeit haben (nur Tag, Monat, Jahr)

Wenn Sie nun Datumsangaben mit new Date() gespeichert haben, die auch die Zeitkomponenten enthalten, müssen Sie einen Datumsbereich erstellen, der alle Momente für diesen Tag enthält:

db.posts.find( //query for all moments/time of a specific date
  {"headers.Date": {"$gte": new Date(2001, 6, 6), "$lt": new Date(2001, 6, 7)}})

Hinweis – Die API für Datum ist Datum (JJJJ, MM, TT) und die Zählung für „Monat“ beginnt bei „0“ und die Zählung für 'date' beginnt bei '1'.