Buduję zapytanie potokowe agregacji za pomocą komendy $substr
z MongoDB, ale nie wiem, jak reprezentować tablicę, której wymaga w Go ze sterownikiem mgo, ponieważ zawiera różne typy wartości (string, int).Jak reprezentować tablicę z typami mieszanymi
Oto zapytanie w javascript:
[ {$group: {"_id": {"dt": {"$substr": ["$dt",0,6]}}}} ]
Co to staramy się robić to uzyskać podciąg dt
(z poprzedniego etapu agregacji) z rozpoczęciem indeks 0, a kończąc indeks 6.
Przejdź mam:
[]bson.M{"$group": bson.M{"_id": bson.M{"dt": bson.M{"$substr": ["$dt",0,6]}}}}}
ale ["$dt",0,6]
nie jest poprawna reprezentacja i wszystko próbowałem wydaje się niepowodzeniem.
Jeśli otrzymane dane zawierają typy mieszane, zwykle lepiej jest zaimplementować dla niego strukturę. Daje to bezpieczeństwo typu i sprawia, że kod jest łatwiejszy do zrozumienia dla innych. – fuz