创建SQL数据集

<< Click to Display Table of Contents >>

当前位置:  数据准备 > 数据集 > SQL数据集 

创建SQL数据集

复制链接

1.创建SQL数据集

以下两种方式进入创建数据集页面:

点击数据集页面左侧顶部的Add_icon图标,进入新建数据集页面。点击SQL数据集进入创建页面。

queryshot4

在已连接的SQL数据源页面,【菜单栏 > 新建数据集】进入连接到该数据源的SQL数据集创建页面。

2.SQL数据集数据集编辑区域

clip0115

SQL数据集编辑区域支持用户编辑数据集所获取的数据由来,具体功能如下:

功能

说明

数据源

用户可以从已有的数据源下拉列表中选择已经创建好的数据源。

编辑数据源

点击编辑数据源图标可以进入选择的数据源的配置界面。

选择表或视图/自定义SQL语句

用户根据需要决定是直接使用数据库下的表或视图,还是使用自己编写SQL语句。

选择表或者输入SQL

根据【选择表或视图/自定义SQL语句】的选择在这里进行相应的设置。

禁止下载

如果勾选禁止下载,则用到此数据集的数据在所有支持数据或报告导出的地方,都不支持导出。同时新增data.download.strict属性,默认是false,勾选“禁止下载”,可以导出图片和PDF。如果设为true,则图片和PDF都不能导出。

clip0116

*在显示详细数据弹框上导出数据时,页面会弹出提示信息:操作失败,因为依赖的数据集禁止下载数据。

刷新数据

用户点击刷新数据按钮时,所有数据字段将在右侧数据区域显示。如果数据有变化(增加或删除),点击该按钮数据会进行同步刷新。

clip0117

在表达式、过滤等位置引用的列如果发生变化,刷新数据时会提示 “ 数据集的列如果发生变化可能会导致表达式列、层次或行过滤不可用,是否清空表达式列、层次和行过滤? ”,否则不会提示。本产品默认字符类型、字符串类型、字节类型、布尔类型、日期类型、时间类型、时间戳类型的数据段存放在维度目录下,其他类型数据段存放在度量目录下。

2.1 选择表或视图创建SQL数据集

在选择表或视图的方式后,会在下方的空白区域显示当前数据库中存在的所有表、视图、分析视图(HANA)、计算视图(HANA)、属性视图(HANA)、Cube(Kylin)。

clip0118

右键刷新后可以对数据源中表、视图、存储过程进行搜索(右上方输入搜索文字)。

点击想要选择的表,点击刷新数据按钮即可在右侧的数据区域看到所需数据。

2.2 选择自定义SQL语句创建SQL数据集

选择自定义SQL语句之后,下方空白区域变成两部分,上半部分与选择表视图一致,下半部分变为文本区域。

Database_dataset_sql_new_custom_sql

在下方的文本域中用户可参考参数示例输入SQL语句,以查询数据库中的数据生成数据集。

支持添加常用、日期、文本、数字相关的内置参数。在下拉选项中选择后在SQL语句文本框区域显示对应的参数。

点击表视图中的表可以在文本域中快速输入对应的表名:

Database_dataset_sql_new_custom_sql_1

在使用 ACCESS 数据库时,刷出的表名称的后边有 $ 字符,用户在写 SQL 语句时需要使用双引号把该表引起来,如 select Sales from "Coffee_chain$"。在使用 vividime Z-Suite 产品提供的驱动及数据库时,在编写 SQL 语句时需要遵循本产品的 SQL 语句法则。

引用的数据集存在子级时需要添加双引号,如 select Sales from "cloud/test.clqry",不存在子级时则不需要添加双引号,如 select Sales from test.clqry

引用关键字时需要加引号。如数据集 a.clqry 中存在 Date 字段,由于 Date 字段是数据库中的关键字,则需要被双引号引起来, select "Date" from test.clqry

注意赋值类型为字符串类型时,需要用单引号引起来而不是双引号。如 select Nation from test.clqry where Nation='China'

注意:在 SYBASE 数据库中不支持 order by 语句。

使用GaussDB200数据源创建SQL数据集,支持写入Hint语句,提升查询性能。

Hint写法:参考GaussDB200支持的Hint写法。Hint写入后对于查询的影响,也请参考GaussDB200。

在Hint输入框和在SQL里写入Hint的区别:

1)Hint输入框里带有Hint:

如果在Hint输入框里写入Hint,对于SQL数据集和依赖SQL数据集的报告执行(不走自服务数据集逻辑的话),则将此Hint内容放到SQL解析器处理过的SQL的第一个Select的后面。

Hint输入框里的内容由用户输入,格式和内容需要按照Hint写法写入完整,我们只负责将Hint拼入SQL,不做解析校验等任何处理。

2)SQL语句里带有的Hint:

如果直接在SQL语句里写入Hint,则在勾选“性能优化”时也不会尝试去子查询,后续计算产生的SQL全部包子查询处理。

GaussDB200_sql_hint

完成语句输入后,点击刷新即可在右侧数据区域显示数据:

Database_dataset_sql_new_custom_sql_refresh_data

2.3 SQL数据集缓存设置

启用:默认为关闭状态,SQL数据的缓存开启需先在【管理系统 > 系统设置】中开启全局缓存设置后才可设置,参考管理系统 > 系统设置 > 全局缓存设置。SQL数据集缓存设置启用后,可设置一段时间内相同查询直接返回缓存结果,该时间段可设置为5分钟、30分钟、1小时、2小时、4小时、12小时、24小时。

自动清除缓存时间:点击启用开关后,可选择一天时间中一个、多个整点时间段自动清除SQL数据集数据缓存库里的缓存。

手动清除缓存:点击启用开关后,点击手动清除缓存,页面右上角提示“清除数据集缓存成功”,即可手动清除SQL数据集数据缓存库里的缓存。

Database_sql_cache_settings

3. 智能SQL

智能SQL利用大模型的能力帮助用户理解SQL含义,优化SQL性能,辅助用户编写SQL。

说明:

智能SQL需要Y+AIGC许可。

购买Y+AIGC后,需要先访问OpenAI官网,购买AI服务后,再在BI中配置AI服务后使用,配置AI服务参考管理系统 > 系统设置 > 配置AI

3.1 SQL解释

想要快速了解当前SQL语句的执行含义,可直接点击SQL语句编辑区域右上方的“SQL解释”,如下图

ai_sql_explain

ai_sql_explain2

同时也可以对左侧SQL语句进行编辑,编辑后点击SQL解释中的刷新ai_sql_refresh按钮,即可重新获得解释。

3.2 SQL优化建议

如果SQL执行效率不佳,想要优化SQL语句,可直接点击SQL语句编辑区域右上方的“优化建议”,如下图

ai_sql_optimize

ai_sql_optimize2

可参考优化建议的内容对SQL进行优化。同时也可以对左侧SQL语句进行编辑,编辑后点击优化建议中的刷新ai_sql_refresh按钮,即可重新获得SQL优化建议。

3.3 自然语言转SQL

如果对SQL不熟悉,或者想提高SQL编写效率,可直接点击SQL语句编辑区域右上方的“自然语言转SQL”,如下图

ai_sql_ask

ai_sql_ask2

自然语言转SQL支持通过对话的方式,帮助用户生成完整的SQL语句。

支持持续对话:即支持上下文理解,可通过持续对话修改和完善SQL。

还原到此处:用户可选择还原到当前对话中的任意一步。

重新生成:如果生成的SQL不对或者不满意,可以点击重新生成,系统会根据对话意图重新生成SQL。

重置会话:如果想清除前面对话的影响,即清除上下文关系,则可以选择重置会话,重新开始。

消除歧义:在对话时,如果存在一些有歧义的描述,系统会智能判断出这些歧义,并让用户进行选择。

如下图,由于数据中存在“产品名称”、“产品种类”字段,因此用户提出“产品”时,弹出选择,用户可选择想要查询的内容,点击“确认并继续”,或者重新进行提问。

ai_sql_ask_select

ai_sql_ask_select2

更多对话对话技巧和帮助请参提问说明及建议