sql >> Databasteknik >  >> NoSQL >> MongoDB

Aggregerande i lokal tidszon i mongodb

i mongo version 3.6 har tidszon lagts till, mongo doc

uttryck för att extrahera datumdel med tidszon är

{ date: <dateExpression>, timezone: <tzExpression> }

vi kan antingen specificera tidszonen eller kompensera samtidigt som vi hämtar datumdelarna

pipeline

> db.txs.aggregate([
...     { $group:{
...         _id: { 
...             day: {$dayOfMonth: {date :"$date", timezone : "Europe/Rome"}}, // timezone
...             month: {$month: {date : "$date", timezone : "+02:00"}}, //offset
...             year: {$year: {date : "$date", timezone : "+02:00"}} //offset
...         },
...         count:{$sum:1}
...     }}
... ])

resultat

{ "_id" : { "day" : 10, "month" : 7, "year" : 2015 }, "count" : 1 }
{ "_id" : { "day" : 11, "month" : 7, "year" : 2015 }, "count" : 2 }
> 

lista över tidszoner



  1. MongoDB - Argumentet till $size måste vara en Array, men var av typen:EOO / saknas

  2. Till vilken nivå låser MongoDB skrivningar? (eller:vad betyder det per anslutning

  3. är det möjligt att anropa lua-funktioner definierade i andra lua-skript i redis?

  4. MongoDB PHP UTF-8 problem