Próbowałem użyć funkcji zbiorczej do pól daty grupa przez rok:MongoDB Kruszywo Framework - Grupa rok
db.identities.aggregate([
{
$group : {
_id : { year : {$year : "$birth_date"}},
total : {$sum : 1}
}
}
])
Niektóre z moich dat jednak spadnie przed 1970 i będąc użytkownikiem systemu Windows otrzymuję paskudny błąd o gmtime:
{
"errmsg" : "exception: gmtime failed - your system doesn't support dates before 1970",
"code" : 16422,
"ok" : 0
}
wiem oczywistą odpowiedź teraz jest dla mnie, aby uzyskać wirtualną uruchomioną maszynę czy coś, ale byłem po prostu ciekawy, czy były jakieś obejścia dla Windows (Windows 7 w moim przypadku) . W przypadku jego braku, ile trafień wydajności byłby przechowywania datę jako obiektu zagnieżdżonego być tj:
birth_date : {
year : 1980,
month : 12,
day : 9
}
Nie jestem zbyt pewien, jak gorączkowe, że będzie z indeksów itd
Wszelkie porady mile widziane!
jakiej wersji Mongo używasz? – Alex