设为首页
收藏本站
开启辅助访问
切换到窄版
登录
立即注册
首页
Portal
云发课堂
考试中心
知识库
大会员
交流
BBS
帮助中心
搜索
搜索
BIM知识资料库
PBI大会员
房建施工VIP
建筑识图
excel案例分析
bim三维建模
办公软件VIP
商业数据分析师
QQ客服
QQ客服
微信客服
微信扫一扫
本版
文章
帖子
用户
云发教育
»
交流
›
PBI数据处理
›
知识资料
›
参照完整性
1
2
3
4
5
6
7
8
9
10
... 16
/ 16 页
下一页
返回列表
发新帖
[知识体系]
参照完整性
[复制链接]
191112
|
157
|
2021-2-21 19:36:57
|
显示全部楼层
|
阅读模式
表格没有空白行,切片器里面怎么会有空白项
—– 令人困惑的空白选项
这个问题曾经困扰过很多人:
我的数据中明明没有空白,为什么制作报表的时候,筛选器和图表有时会显示一条空白记录?
空白当然不是凭空产生的,它遵循一定的规律,这篇文章我们来介绍空白项产生的原因,也就是
参照完整性
关系模型的三类完整性约束
数据库关系模型中有三类完整性约束,分别是:实体完整性,参照完整性,用户定义完整性
实体完整性
用于保证关系数据库中每条记录都是可区分的,唯一的,这种唯一既不能有重复值,也不能有空值。在
主键 外键和索引
中我们介绍过,这其实就是
主键
的作用,因此,从便于记忆的角度,你也可以理解为
主键
完整性。
用户定义完整性
不同的关系数据库因其应用环境的不同,通常需要针对某一具体字段设置约束条件,这种由使用者基于具体业务逻辑设定的约束条件,就叫做用户定义完整性。比如学生的性别字段只能有男、女两个值,学生考试成绩的范围是 0-100 分。
参照完整性
参照完整性,又称引用完整性,是
相关联的两个表之间的约束
,对于建立关系的两个表来说,维度表中每条记录的
外键
的值必须是主表中存在的,简单的说,就是事实表的每一行必须在维表中存在对应的记录。
以下表为例,位于关系多端的 Orders 表的
外键
CustomerID 存在一条记录[CustomerID = CustX]与维表不匹配,这种情况下以 DIM_A 表的 Customer 列建立筛选器(文章开头的图片),会显示一条空白记录。
违反参照完整性示意图
Power BI 允许违反参照完整性的情况出现,而在数据库系统中,如果两个表之间建立了关联关系,对关系的操作会影响到另一个表中的记录,此时参照的完整性不允许关系中有不存在的实体引用。参照完整性与实体完整性二者,皆是关系模型必须满足的完整性约束条件,其目的在于保证数据一致性。
下面两幅图只有上图符合参照完整性
Power BI 中的参照完整性
允许违反参照完整性的情况出现,也就是事实表中可以存在与维表不匹配的行,通过维度表的属性汇总数据时,系统将这些不匹配的记录自动映射到空白行。
空白项本身不代表记录数量,有多条不匹配记录,也只显示一个空白行
当维度表本身存在空值的时候,参照完整性和自身的空值合并显示会让情况变的复杂
维度表的 Category 列本身有空值,和参照完整性混合显示(右侧)
处理参照完整性
熟悉参照完整性可以帮助你了解源数据中是否在不匹配的记录,以便及时采取相应的措施。不过,很多情况下这种违反并不需要干预。但是出现在报表中的空白就很影响用户体验了,这个时候
我们可以使用视觉筛选器过滤掉空白记录。
图表和筛选器都可以使用类似的方法过滤掉空白项
另外,某些 DAX 函数也遵循不同的参照完整性策略,比如
VALUES
考虑参照完整性,
DISTINCT
不考虑参照完整性。在
表函数
部分,会对这种行为做详细介绍。
假设引用完整性对性能的影响
在直连模式下(DirectQuery),使用假设引用完整性可以获得更好的性能表现,如果感觉直连模式下
查询
缓慢,请检查此设置是否开启。
开启方式
在创建表关系界面下会显示“假设引用完整性”,选中后,Power BI 将对数据验证此设置,以确保没有
Null
或不匹配的行。 但是 ,在值的数量非常大的情况下,验证不能保证没有引用完整性问题。
设置界面
验证将在编辑关系时执行,如果数据有任何后续更改,验证结果不会自动更新。
开启效果
查询语句从左外连接变为内连接,大大减轻计算开销。
设置错误会发生什么
如果在数据中有引用完整性问题时设置“假设引用完整性”,此设置不会导致错误 。 但是,将导致数据明显不一致。 例如:
视觉对象显示的总订单数量 值为 40
视觉对象显示总的 按仓库城市的订单数量 值仅为 30 ,因为它不包含未匹配记录所含的订单数量。
回复
使用道具
举报
luanmm
|
2021-4-24 19:26:06
|
显示全部楼层
佩服佩服!
回复
使用道具
举报
搏斗小子
|
2021-8-23 21:12:02
|
显示全部楼层
站位支持
回复
使用道具
举报
champoin
|
2021-9-23 15:11:50
|
显示全部楼层
向楼主学习
回复
使用道具
举报
ailinchen
|
2021-9-24 18:49:32
|
显示全部楼层
介是神马?!!
回复
使用道具
举报
易水寒
|
2021-10-11 13:19:27
|
显示全部楼层
太棒了,感谢唐楼主精彩的分享
回复
使用道具
举报
薄荷
|
2021-10-12 08:46:39
|
显示全部楼层
小白一个 顶一下
回复
使用道具
举报
lwfeng
|
2021-10-26 20:09:14
|
显示全部楼层
谢谢,一直在学习云发教育课程!
回复
使用道具
举报
树洪
|
2021-11-2 14:20:11
|
显示全部楼层
楼猪V5啊
回复
使用道具
举报
mumiao
|
2021-11-3 06:00:51
|
显示全部楼层
垃圾内容,路过为证。
回复
使用道具
举报
下一页 »
1
2
3
4
5
6
7
8
9
10
... 16
/ 16 页
下一页
返回列表
发新帖
高级模式
B
Color
Image
Link
Quote
Code
Smilies
您需要登录后才可以回帖
登录
|
立即注册
QQ登录
微信登陆
手机登录
本版积分规则
发表回复
回帖并转播
回帖后跳转到最后一页
浏览过的版块
问答互助
xueshan
8
主题
1392
回帖
1521
积分
金牌会员
金牌会员, 积分 1521, 距离下一级还需 1479 积分
金牌会员, 积分 1521, 距离下一级还需 1479 积分
积分
1521
加好友
发消息
回复楼主
返回列表
问答互助
知识资料
图文推荐
PowerPivot与数据透视表初探
2021-02-19
不用VBA,不用SQL语句,且看 POWER QUERY 快速合并多个Excel工..
2021-02-19
2019年个税专项附加扣除信息表数据汇总 获取不同工作簿某...
2020-08-05
如果用PQ拆分不固定行表格
2020-09-25
条件格式中百分比的计算原理
2021-02-16
热门排行
1
PowerPivot与数据透视表初探
2
快来学习 Power Query 吧,屌爆了的Excel加
3
进一步综合介绍 Power Query 使用方法
4
2019年个税累进算法
5
2019年个税专项附加扣除信息表数据汇总 获
6
BIM族库-电气-电气设备-监控设备
7
不用VBA,不用SQL语句,且看 POWER QUERY
8
新人报到,请多多赐教
9
bim软件应用-族文件-双人漫步训练器
10
如果用PQ拆分不固定行表格