页面树结构

版本比较

标识

  • 该行被添加。
  • 该行被删除。
  • 格式已经改变。

...

信息
title前置条件

1、数据模型支持自动检测关系,也支持手动创建关系、手动检测关系。

2、数据模型默认开启 自动检测关系 ,如没有开启需要在运维设置/ 系统设置 / 高级选项 设置 OLAP_QUERY_AUTO_ADD_CHECK_LINK=true,在加载表或者查询时才会自动检测关系。

3、如开启了自动检测关系:假设自动检测没检测出来,用户手动设置关系不正确时,会提示关系无效,但目前未强制更正;检测关系的原理就是利用建立关系的字段在表中是否重复,会真实查数据库,部分数据库慢可关闭此检测。

4、基数 暂不支持 多对多

5、假设引用关系完整性,仅在数据模型是直连模式生效,抽取模式不生效。

6、在V11 版本去掉了 一对一(内连接)、一对一(外连接),只有 一对一如果是旧资源升级:

7、产品目前支持设置筛选方向:多对一、一对多默认单向筛选;一对一默认就是双向筛选,详情可查看:双向筛选介绍

8、基于指标模型生成的数据模型无法设置查询/表关系,详细可查看:指标模型

9、你可能会需要查看 界面介绍设置与修改查询

要了解关系,需要先了解子图概念。



2 关系

2.1 关系用途

1、数据模型设置的关系会应用于模型表列的筛选器传播到其他表或查询, 只要有关系路径可循,筛选器就会进行传播,这可能涉及传播到多个表/查询,

...

选项内容
关系
  • 需要选择原表(左表)的关联字段,再选择目标表(右表)对应的关联字段; 如果原表设置的字段是字符串,那么目标表的也只能选择字符串的字段与之关联。
  • 关系是必填项,一定要设置至少一个关系;点击 支持新建多个关系;假设设置了多个关系,生成的SQL语句是and关系。
  • 关系支持设置 自定义计算列比如想要关系字段需要使用contact、replace等函数进行拼接、替换等,需要使用自定义计算列。
条件默认 等于,支持等于、不等于、大于等于、小于、小于等于;如果是抽取模式,并且缓存库是ClickHouse,则不支持 等于、不等于、大于等于、小于、小于等于 条件(ClickHouse库本身不支持)
基数
  • 定义: 连接基数:属于连接的自然属性(与数据分析领域无关),一般,在有主键、外键的表建立关系时:
    1. 一对多、多对一 关系:字段通过外键关联到目标表的主键字段、或唯一索引字段。
    2. 一对一:通过主键字段(或唯一索引字段)关联到另外一个表或查询的主键(或唯一索引字段)。
    3. 当数据库缺乏主键/唯一索引信息标识时,需要用户手动创建关系。
  • 如果设置好了关系,但是不知道基数应该选择什么,可以点击旁边的,检测基数。
假设引用关系完整性该设置项仅对 直连 模式生效。 详情可查看本篇章节 假设引用关系完整性 。

 方式1:

方式2:

Image Added

Image RemovedImage Added

3、根据步骤2设置好各个表、查询的关系,最终效果如下,构建了一个 星型模型:

...