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

Vyberte na základě časového razítka a aktualizujte časové razítko s nulou

ISODate() je reprezentováno jako datetime objekt od PyMonga. MongoDB předpokládá, že data a časy jsou v UTC. Existuje několik způsobů, jak získat půlnoc (začátek dne) pro daný čas UTC d :

>>> from datetime import datetime, time, timedelta
>>> d = datetime(2015, 10, 13, 1, 4, 30, 515000)
>>> datetime(d.year, d.month, d.day) # @user3100115' answer
datetime.datetime(2015, 10, 13, 0, 0)   # 369 ns
>>> datetime.fromordinal(d.toordinal()) # 451 ns
datetime.datetime(2015, 10, 13, 0, 0)
>>> datetime.combine(d, time.min)       # 609 ns
datetime.datetime(2015, 10, 13, 0, 0)
>>> d - (d - d.min) % timedelta(days=1) # Python 3
datetime.datetime(2015, 10, 13, 0, 0)   # 1.87 µs
>>> datetime(*d.timetuple()[:3])
datetime.datetime(2015, 10, 13, 0, 0)   # 2.34 µs
>>> from calendar import timegm
>>> datetime.utcfromtimestamp((timegm(d.timetuple()) // 86400) * 86400) # POSIX
datetime.datetime(2015, 10, 13, 0, 0)   # 4.72 µs


  1. Uložit referenční pole mongoengine

  2. Jak číst sbírku po kouscích po 1000?

  3. MongoDB:Jak reprezentovat schéma schématu v diplomové práci?

  4. Udělejte kombinaci dvou polí jedinečnou v mé sbírce