OData v4.0聚合查询(聚合查询语法) [英] OData v4.0 aggregate queries (aggregate query syntax)

查看:229
本文介绍了OData v4.0聚合查询(聚合查询语法)的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

例如, 我有一个对象模型:

Product
{ 
  int ProductId,
  string Name,
  List<Sale> Sales
}

  • 我想使用汇总查询来获取销售总额:

获取:产品?$ apply = groupby(名称,聚合(销售(总金额为总计))) (遵循绿洲开放标准)

->得到错误: UriQueryExpressionParser_CloseParenOrCommaExpected =')'或','预期在'{1}'中的位置{0}.".金额的头寸.

  • 我将查询更改为:

获取:产品?$ apply = groupby(名称,总计(销售额/总和为总金额))

->工作成功!.

我的问题:

->当前版本的OData Core是否支持聚合查询语法,例如我的示例" aggregate(Sales(Amount with sum as Total")")或否?

请给我您的建议.

非常感谢

解决方案

https://github.com/OData/odata.net/issues/463

查询

Product?$apply=groupby(Name, aggregate(Sales/Amount with sum as Total))

也应该抛出异常,尚不支持.

For example, I have an object model:

Product
{ 
  int ProductId,
  string Name,
  List<Sale> Sales
}

  • I want to use the aggregate queries to get total Amount of Sales:

GET: Product?$apply=groupby(Name, aggregate(Sales(Amount with sum as Total))) (follow as oasis-open standard)

--> Got error: UriQueryExpressionParser_CloseParenOrCommaExpected=" ')' or ',' expected at position {0} in '{1}'. ". position at Amount.

  • I change the query to:

GET: Product?$apply=groupby(Name, aggregate(Sales/Amount with sum as Total))

--> Work successfully!.

My question:

--> Had current version OData Core supported the aggregate query syntax as my example "aggregate(Sales(Amount with sum as Total))" or NOT?

Please give me your advice.

Thank you very much

解决方案

This is tracked at https://github.com/OData/odata.net/issues/463

The query

Product?$apply=groupby(Name, aggregate(Sales/Amount with sum as Total))

should throw exception as well, it's not supported yet.

这篇关于OData v4.0聚合查询(聚合查询语法)的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆