MongoDB
 sql >> Baza danych >  >> NoSQL >> MongoDB

MongoDB znajdź Porównanie zapytań z CurrentDate

Zgodnie z Twoim pytaniem chcesz pobrać dokumenty z bieżącego dnia z kolekcji mongodb . W powłoce mongoDB po wpisaniu new Date() daje ci aktualną datę z czasem, a ta wartość zawsze się zmienia, gdy uruchamiasz tę samą new Date() więc prawdopodobnie Twoje zapytanie jest takie :

db.collectionName.find({"start_date":new Date()}).pretty()

Ale myślę, że to zapytanie zwraca te dokumenty, które będą prezentowane w Twojej kolekcji, ale tę samą aktualną Date wartość może nie być obecna w twoich dokumentach, więc w tym przypadku powinieneś użyć następujących

db.collectionName.find({"start_date":{"$lte":new Date()}}).pretty()

Lub

db.collectionName.find({"start_date":{"$gte":new Date()}}).pretty()

W niektórych przypadkach, jeśli chcesz znaleźć dokładne dopasowanie za pomocą year,month,day wtedy powinieneś użyć agregacji z $rok,$miesiąc,$dzieńMiesiąca w $projektu tak :

db.collectionName.aggregate({
  "$project": {
    "year": {
      "$year": "$date"
    },
    "month": {
      "$month": "$date"
    },
    "day": {
      "$dayOfMonth": "$date"
    }
  }
}, {
  "$match": {
    "year": new Date().getFullYear(),
    "month": new Date().getMonth() + 1, //because January starts with 0
    "day": new Date().getDate()
  }
})

W powyższym zapytaniu agregującym zwróci te dokumenty, które pasują do aktualnej daty, np. year,month,day z bieżącej daty. Zamieniasz także $match jako

var currentDate = new Date()

 {
  "$match": {
    "year": currentDate.getFullYear(),
    "month": currentDate.getMonth() + 1, //because January starts with 0
    "day": currentDate.getDate()
  }
}


  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Jak przeprowadzić wyszukiwanie za pomocą $geoIntersects/2dsphere w podpolu tablicy?

  2. Jak kontrolować definicję projekcji w MongoDb za pomocą C#

  3. Pobierz uporządkowany wynik według trafności z zapytania tekstowego w kolekcji MongoDB za pomocą sterownika C#

  4. Rekurencyjne zapytanie Mongodb

  5. Nie można wyświetlić tylko punktów z określonego zakresu (kółka) za pomocą funkcji .getBounds() (Ulotka)