Cosmos DB не поддерживает функцию group by
, вы можете проголосовать за , если вам срочно необходимо.
Предоставить сторонний пакет documentdb-lumenize для справки, которая поддерживает группирование по признакам, она имеет .net
пример:
string configString = @"{
cubeConfig: {
groupBy: 'state',
field: 'points',
f: 'sum'
},
filterQuery: 'SELECT * FROM c'
}";
Object config = JsonConvert.DeserializeObject<Object>(configString);
dynamic result = await client.ExecuteStoredProcedureAsync<dynamic>("dbs/db1/colls/coll1/sprocs/cube", config);
Console.WriteLine(result.Response);
Вы можете сгруппировать по столбцу assetId
и получить максимум timestamp
.
Кроме того, вы можете сослаться на мой предыдущий случай: как подсчитать различное значение в БД космоса , чтобы использовать хранимую процедуру для реализации некоторых функций агрегирования.