子级和返回父级的OData筛选器

子级和返回父级的OData筛选器,odata,olingo,Odata,Olingo,我正在开发一个搜索功能,它将由OData服务提供支持。它将返回一个或多个标题对象列表作为结果。 我们需要搜索的许多字段不在Header对象中。它们仅位于子对象(导航属性)中。 正确的方法是如何对子字段执行OData搜索并仍然返回父对象列表 这与我期望在标准SQL中作为“exists”查询所做的类似 我在我的项目中使用Java-Apache Olingo,但我相信这是一个关于OData的一般性问题。如果是关于OData协议本身,则支持如下: 地址/城市均衡器“雷德蒙” 地址/伦敦东北部城市 ()

我正在开发一个搜索功能,它将由OData服务提供支持。它将返回一个或多个标题对象列表作为结果。 我们需要搜索的许多字段不在Header对象中。它们仅位于子对象(导航属性)中。 正确的方法是如何对子字段执行OData搜索并仍然返回父对象列表

这与我期望在标准SQL中作为“exists”查询所做的类似


我在我的项目中使用Java-Apache Olingo,但我相信这是一个关于OData的一般性问题。

如果是关于OData协议本身,则支持如下: 地址/城市均衡器“雷德蒙” 地址/伦敦东北部城市 ()


当谈到Apache Olingo中的实现时,您可以在其邮件列表中提问:user@olingo.apache.org . 您可以跟随加入讨论列表。

如果是关于OData protocl本身的,支持如下: 地址/城市均衡器“雷德蒙” 地址/伦敦东北部城市 ()


当谈到Apache Olingo中的实现时,您可以在其邮件列表中提问:user@olingo.apache.org . 您可以跟随加入讨论列表。

是的,这是完全可能的,只需将子路径包含在$filter中即可

e、 假设我们有一架首航飞机和一家儿童航空公司

/飞机将列出所有航空公司的所有飞机 飞机?$filter=航空公司/代码eq“BA”将仅列出BA的所有飞机

对于第二个查询,要返回子项并在父项上进行筛选。。。 不确定是否只返回子级-如果通过其键解析为单亲,则可以执行此操作, 例如 Aircraft(123)/Airline-将查找带有键123的飞机,并仅返回Aircraft子导航属性信息

要过滤并包含多个标题,我认为您唯一的选择是使用$expand将子信息与标题信息一起包含。 e、 g

飞机?$filter=机身类型eq‘NB’和$expand=航空公司 -因此,这将过滤NB类型(窄体)上的标题飞机,并包括子航空公司信息


希望这有帮助。

是的,这是完全可能的,只需在$filter中包含子路径即可

e、 假设我们有一架首航飞机和一家儿童航空公司

/飞机将列出所有航空公司的所有飞机 飞机?$filter=航空公司/代码eq“BA”将仅列出BA的所有飞机

对于第二个查询,要返回子项并在父项上进行筛选。。。 不确定是否只返回子级-如果通过其键解析为单亲,则可以执行此操作, 例如 Aircraft(123)/Airline-将查找带有键123的飞机,并仅返回Aircraft子导航属性信息

要过滤并包含多个标题,我认为您唯一的选择是使用$expand将子信息与标题信息一起包含。 e、 g

飞机?$filter=机身类型eq‘NB’和$expand=航空公司 -因此,这将过滤NB类型(窄体)上的标题飞机,并包括子航空公司信息


希望这有帮助。

谢谢。这很有帮助。但是,我也在犹豫是否可以返回子对象并在ParentThank上进行筛选。这很有帮助。但是,我也在考虑是否可以返回子对象并对父对象进行筛选