CosmosDB + группа по - PullRequest
       30

CosmosDB + группа по

0 голосов
/ 11 октября 2019

Мне нужно использовать предложение " GROUP BY " в Обозреватель данных Azure , но я думаю, что не поддерживается .

У кого-то естьидея решить или избежать группы по?

С уважением,

Ответы [ 3 ]

0 голосов
/ 12 октября 2019

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.

Кроме того, вы можете сослаться на мой предыдущий случай: как подсчитать различное значение в БД космоса , чтобы использовать хранимую процедуру для реализации некоторых функций агрегирования.

0 голосов
/ 05 ноября 2019

Наконец, Azure Cosmos DB в настоящее время поддерживает GROUP BY в .NET SDK 3.3 или более поздней версии. Поддержка других языковых SDK и портала Azure в настоящее время недоступна, но планируется.

<group_by_clause> ::= GROUP BY <scalar_expression_list>

<scalar_expression_list> ::=
          <scalar_expression>
        | <scalar_expression_list>, <scalar_expression>

enter image description here

0 голосов
/ 11 октября 2019

В Azure Data Explorer на данный момент нет группы. Однако есть оператор суммирования, который может помочь в достижении многих вещей, для которых вы бы использовали GROUP BY в SQL.

Вы можете найти его в https://docs.microsoft.com/en-us/azure/kusto/query/summarizeoperator

...