Power BI(二):Power Pivot建模和DAX表达式

2,078 阅读2分钟

一、表关系和建模

1. 表的对应关系

关系类型 特点 原因
一对一 主键对主键 业务工作中基本见不到
多对多 非主键对非主键 可以遇到但不能适用,虽然能连接但不能正确分类汇总
一对多 主键对非主键 正确的连接关系,一表出维度多表出度量

注:维度筛选度量,筛选是维度汇总度量的能力

2. 变量类型

变量类型 说明 举例
名义型 文本型,用于维度,能做主键 id、姓名、星座、血型
有序型 文本型,用于维度,不能做主键 成绩水平、员工绩效、健康状况
连续型 数值型,用于度量,不能做主键 如温度、身高、体重

3、多维数据集间的关系

  • 单向连接下:一表出维度多表出度量(T1)
  • 双向连接下:一表出维度多表出度量(T1),多表出维度一表出度量(T2)

4、T2关系的可能场景

  1. 相邻两表双向筛选时,多表出维度,一表出度量,这种情况要避免,一般也不会用到。
  2. 跨表筛选,路径通的时候通过关键字段跨表连接,要尽量避免;当满足维度与关键字是父子级关系时才能得到正确结果。
    注:父子级关系是一个父级值对应多个子级值,一个子级值只能属于一个父级值,如省份与城市、产品系列与产品。

二、业务指标

  • 指标与指标体系
  • 模型与分析方法
  • 行为与流程
  • 汇总维度(汇总指标的维度)与筛选维度(切片器)

三、DAX表达式新建度量值

1、常见表达式

  • 转换:switch(表达式,值1,结果1,值2,结果2,...)
  • 合并(前提是表间建立了关系):related(字段)
  • 筛选条件:filter(表,满足条件)
  • 过滤条件(可跨表):all(过滤表或字段)
  • 计算(条件之间是and):calculate(计算规则,条件1,条件2,...)
  • 计算均值:avg,当均值的维度不是主键时,需要用公式sum/count计算
  • 排名:rankx(条件,字段名)

2、几个例子

3、时间智能函数

  • totalmtd函数:返回当月月初至当前日合计值,不能参照时间段,只受后点影响。

  • previousmonth函数:返回上月整月合计值,不能参照时间段,只受前点影响。

  • dateadd函数:返回上月相同时间段合计值,可参照时间段,受时间段前后点影响。 注:所选日≥上月最后一天或本月最后一天,返回上月全月,其他无法求的值则修改参数MONTH为DAY。

  • 构造辅助日期