使用路径表达式node.js进行查询

2020-09-02 20:24发布

点击此处---> 群内免费提供SAP练习系统(在群公告中)加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)有关查询中路径表达式的问题。 ...

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


有关查询中路径表达式的问题。

此处中指出 在查询中受支持。

此处 方法可以返回cds.ql对象。

cds.ql对象与CQL对象相同,后者是已解析的CDS查询的AST。 解析是通过cds.parse.cql方法完成的,该方法仅接受CDS sql语句作为输入。 这意味着它不能与路径表达式一起使用,因为定义位于模型的关联中,并且解析器不知道模型。 当然,输出不包含join子句或mixin。

稍后,当CQL对象转换为SQL时,模型就在那里了,但是引用解析器没有检查模型中的关联路径。

AST/CQL中的Mixins正确,但是在cds-sql(转换器)中不支持此功能。

那么如何在查询中使用路径表达式? 将模型添加到查询解析器,或者更正sql转换器以读取关联? 或者,如尚无法实现(如mixin),何时计划此功能?

如果需要一个示例,只需在标准书店模型上运行此查询即可:

 cds.parse.cql("从Books.author中选择ID");
 

如果使用sqlite,将给您一个错误,指示Books_author表不存在。 由于引用解析器不知道作者是一个关联而不是表名。

非常感谢Martin

8条回答
亦是此间程序员
2020-09-02 20:55

嗨,

我不确定我是否理解这个问题(因此,如果我的回答是错误的,请原谅我),但这对我有用:

 cds.run(cds.parse.cql("从MY_BOOKSHOP_BOOKS中选择SELECT author_ID"));


 ⇢[{author_ID:101},
   {author_ID:107},
   {author_ID:150},
   {author_ID:150},
   {author_ID:170}]
 

干杯

Pierre

一周热门 更多>