Skip to content

2.14 数据库视图数据源

此章节主要讲述数据源类型来自于数据数据库视图的使用。

2.14.1 配置说明

1、首先我们需要创建一个数据源类型为来自数据库视图的数据表,并且创建我们需要最终希望在该数据表中展示的字段

2、其次我们需要打开该数据表的高级设置,并且在[SQL查询语句]中编写sql语句。

image-20231129213016281

2.14.2 编写sql语句说明

  • 在编写sql语句时可以直接使用数据表的标识符进行表查询,但需要将数据表标识符的大写字母转化为下划线加小写字母。例:table_id
  • 在编写sql语句时可以直接使用字段的标识符进行列查询,但需要将字段的标识符的大写字母转化为下划线加小写字母。例:field_id
  • 在编写sql语句时如果要查询邻接表,需要按如下格式进行查询:数据表标识符$字段标识符(同样需要把大写字母转化为下划线)。例:z_appId_tableId_fieldId

邻接表的概念:如果数据表中有关联列表类型的字段,系统还会额外为每一个关联列表字段创建一张邻接表来存储关联关系。可点击此处查看帮助文档

例:创建一个数据表对【依赖数据】模块中的数据以性别和职位进行了聚合汇总展示

sql:

sql
SELECT
	concat('sex_',sex) as id,
	sex as type,
	COUNT ( 1 ) AS counts,
	now( ) AS create_date 
FROM
	script_and_view_source_dep_data 
GROUP BY
	sex UNION ALL
SELECT
	concat('post_',post) as id,
	post as type,
	COUNT ( 1 ) AS counts,
	now( ) AS create_date 
FROM
	script_and_view_source_dep_data 
GROUP BY
	post;

效果展示: image-20231129211453727

image-20231129213130612

2.14.3 数据库物化视图

物化视图其实就是物理表,只不过这张表通过oracle的内部机制可以定期更新,将一些大的耗时的表连接用物化视图实现,会提高查询的效率,但是数据不会实时更新,需要调用脚本更新。

配置方法:

如果需要对一个数据源类型为来自数据库视图的数据表开启物化视图,只需要打开该数据表的高级设置,打开[将查询结果存储为物化视图]即可。

image-20231129213326453

物化视图的更新方法:

如果需要更新物化视图的数据,需要主动调用informat.table.refreshDataSource()方法,可点击此处查询该方法的帮助文档。如下为一个刷新物化视图数据的自动化。

image-20231129213523911

代码片段内容:

js
informat.table.refreshDataSource("dataModelDbMaterializedView")