sql >> Databáze >  >> NoSQL >> MongoDB

Dotazování na vložené dokumenty podle shodných dat v MongoDB

Zde nemusíte používat regulární výraz, mělo by fungovat něco jednoduššího, jako je toto:

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

To by mělo fungovat, pokud data uložená v DB jsou bez času (jen den, měsíc, rok)

Nyní, pokud máte data uložená pomocí new Date(), která zahrnuje i časové složky, musíte vytvořit časové období, které bude zahrnovat všechny okamžiky pro daný den:

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)}})

Poznámka – Rozhraní API pro datum je Datum (RRRR,MM,DD) a počítání pro „měsíc“ začíná od „0“ a počítání pro „datum“ začíná od „1“.




  1. (MongoDB Compass) vyhledávání pomocí let nefunguje

  2. Nelze se připojit k Mongo Atlas pomocí peeringu VPC z clusteru GCP

  3. Mongoose .save() vrací prázdný chybový objekt, neukládá se do DB

  4. Dotaz MongoDB v úložišti Spring:omezení počtu záznamů po filtrování