永洪社区

标题: 新建表达式所用语言的若干问题 [打印本页]

作者: Richard_HI    时间: 2022-12-27 11:43
标题: 新建表达式所用语言的若干问题
1、新建表达式里面的SQL表达式具体是哪种SQL语言呢,oraclemySQL还是Microsoft SQL






2、什么情况下新建表达式只能用js语言,即“SQL表达式”的勾选框为灰色的?我们现在的情况是入数据集市后,新建的表达式都只能用js语言。


作者: zzy1912    时间: 2022-12-27 11:56
看您的版本像是8.5左右
1.SQL语法永洪本身不做任何转换直接下推到对应数据源的数据库中执行,符合对应的语法即可
2.一般允许下推到数据库中执行的语句会允许勾选SQL表达式选项,当然书写也要符合SQL的语法(同时在数据集页面勾选允许数据库计算)。
作者: zzy1912    时间: 2022-12-27 11:59
8.8版本的非SQL表达式仅支持JS,所以当前的情况是正常的。
新版本有更新和优化,同事新版本中也将表达式和聚合表达式统一入口为新建计算列,请知悉。
作者: zzy1912    时间: 2022-12-27 11:59
8.8之前和8.8之后,产品支持的计算列函数和处理逻辑不同。从8.8开始,永洪对计算列函数做了增强优化。主要优化点为:

•入口优化。

报告中新建计算列的时候,以前有两个入口:“新建表达式”和“新建聚合表达式”。在8.8及以后版本中,统一为一个入口:新建计算列。

•去掉数据类型选择框。

以前需要选择计算列返回的数据类型。在8.8及以后版本中,不需要再选择数据类型,产品自动判断返回的数据类型。

•改变计算引擎。

以前分为SQL表达式和非SQL表达式(采用JavaScript语法)。在8.8及以后版本中,分为基础函数、SQL语句、Mongo管道语句。基础函数即永洪产品支持的函数,采用产品规定语法,如果是直连数据库,可以转为SQL语法下推数据库执行。SQL语句需按照SQL语法写入,产品不做转换,直接将写入的内容合入到SQL语句中下推数据库执行。Mongo管道语句是对Mongo数据集来说,支持按Mongo管道语句支持的语法写入,产品不做转换,直接将写入的内容合入到管道语句中下推到数据库执行。

•性能优化。

以前非SQL表达式都采用JavaScript引擎处理,计算列全部在内存中计算。8.8及以后版本中,对于基础函数也进行了下推数据库处理,性能更优。
作者: yhdata_lyaa    时间: 2022-12-27 13:28
zzy1912 发表于 2022-12-27 11:59
8.8之前和8.8之后,产品支持的计算列函数和处理逻辑不同。从8.8开始,永洪对计算列函数做了增强优化。主要 ...


作者: yhdata_lyaa    时间: 2022-12-27 13:28
可以新建sql表达式的前提:
1.使用的数据集是sql数据集。
2.该sql数据集没有同步数据集数据。
作者: 倘若初见    时间: 2022-12-27 13:48
使用的数据集是sql数据集
作者: yhdata_yzm    时间: 2022-12-27 14:27
sql用你sql本身适合的sql表达式





欢迎光临 永洪社区 (http://club.yonghongtech.com/) Powered by Discuz! X3.4