我正在尝试从 OData Feed 的表(if_sites)中选择特定的列,但是这些列中有 2 个是表,我只能找到一种方法来扩展一个表,而不是表中的 2 个或更多表if_sites
表名:if_sites
如果_名字 | if_siteid |
---|---|
站点A | 10eed1 |
B站 | 17fcc2 |
if_sites 还包含以下表格,
if_if_locality_if_sites | if_if_site_if_schedule |
---|---|
如果_名字 | 如果_名字 |
if_if_locality_if_sites | if_scheduleid |
if_if_LocalityType |
这就是我目前所拥有的。
= OData.Feed(https://XXXXXX/v9.2/if_sites?$select=if_siteid,if_name,if_if_locality_if_site&$expand=if_if_locality_if_site($select=if_name,if_if_locality_if_site,if_LocalityType), null, [Implementation="2.0"])
除了上面的扩展列外,我还想在同一查询中添加 $expand= if_if_site_if_schedule($select=if_name)
我想我可以生成第二个查询,添加以下内容并建立关系。
= OData.Feed(https://XXXXXX/v9.2/if_sites?$select=if_siteid,if_if_site_if_schedule&$expand=if_if_site_if_schedule($select=if_name), null, [Implementation="2.0"])
但肯定有一种方法可以在一个查询中完成。
我试过了
$expand=if_if_locality_if_site($expand=if_if_site_schedule;$select=if_name)
,
$expand=if_if_locality_if_site,if_if_site_if_schedule
= .../v9.2/if_sites?$select=if_siteid,if_name,if_if_locality_if_site&$expand=if_if_locality_if_site/if_name,if_if_site_if_schedule/if_name", null, [Implementation="2.0"])
和各种组合,但我没有找到,(找到遍历多个导航属性的路径。请重新表述查询,使每个扩展路径仅包含类型段和导航属性。),位置“x”处的语法不正确,与嵌套相关的注释查询。
下面好像已经成功了,
= OData.Feed("https://XXXXX/v9.2/if_sites?$select=if_if_locality_if_site&$expand=if_if_locality_if_site($select=if_name,if_if_locality_if_site,if_LocalityType), if_if_site_if_schedule($select=if_scheduleid,if_name)", null, [Implementation="2.0"])
我试图只 $select 我想查看数据的列,但我遇到了麻烦。
从 $select 中省略特定列会产生关系问题(即,行会显示不正确的数据),例如所有 400k+ 行显示相同的 if_scheduleid。
表格的加载需要很长时间,可能比我以前通过 Power Query 进行加载的方式要快得多,尽管我在其中选择了表格,扩展了相关字段(嵌套表格),然后删除了其他列(100 多个额外的列)。