第1 章 Power Pivot,超级数据透视表 1
1.1 传统Excel 数据透视表的能力与局限 1
1.1.1 传统Excel 数据透视表的能力 1
1.1.2 传统Excel 数据透视表的局限 4
1.2 Power Pivot 在数据分析方面的优势 4
1.2.1 多表关联能力 4
1.2.2 功能更加丰富 7
1.2.3 更快的运算速度 8
1.3 Power Pivot,数据分析更智能 8
第2 章 Power Pivot,单表操作 10
2.1 传统Excel 数据透视表的工作原理 .. 10
2.2 Power Pivot,Excel 革命 . 16
2.3 进入Power Pivot 管理界面. 19
2.3.1 从Pivot Table 到Power Pivot 19
2.3.2 Power Pivot 中的自定义运算方法 . 23
2.3.3 Power Pivot 中的计算列与度量值表达式 . 25
2.3.4 最重要的函数――CALCULATE() 函数 26
2.4 Power Pivot 与DAX 函数 29
2.4.1 筛选限制移除函数――ALL() 函数 30
2.4.2 ALL() 函数与ALLEXCEPT() 函数 36
2.4.3 CONCATENATEX() 函数与VALUES() 函数 . 37
2.4.4 筛选函数――FILTER() 函数 40
2.4.5 CALCULATE() 函数与FILTER() 函数 43
2.4.6 DAX 表达式与Power Pivot 超级数据透视表布局48
2.4.7 关于CALCULATE() 函数的类比 50
2.4.8 返回表的CALCULATETABLE() 函数 52
2.4.9 逐行处理汇总函数SUMX() 55
2.5 Power Pivot 的初步总结 59
第3 章 Power Pivot,多表建模 61
3.1 Power Pivot 数据模型的建立61
3.1.1 数据的获取 61
3.1.2 使用Power Pivot 的数据建模能力 62
3.1.3 一花一世界,一表一主题 63
3.1.4 表中的关键字与非重复值 66
3.1.5 表间的关联关系 67
3.1.6 无数据模型,不Power Pivot 71
3.1.7 表间的上下级关系 73
3.1.8 用DAX 思考,Think in DAX 73
3.2 多表数据模型中的计算列 76
3.2.1 RELATED() 函数与RELATEDTABLE() 函数 77
3.2.2 字符串连接函数CONCATENATEX() 83
3.3 多表数据模型中的度量值表达式 85
3.3.1 计算列公式与度量值表达式在用途上的区别 85
3.3.2 将CONCATENATEX() 函数用于度量值表达式中 87
3.4 VALUES() 函数与DISTINCT() 函数88
3.4.1 VALUES() 函数 . 88
3.4.2 DISTINCT() 函数 . 90
3.5 表间筛选、表内筛选与ALL() 函数 . 91
3.6 CALCULATE() 函数与CALCULATETABLE() 函数 . 97
3.7 逐行处理函数――SUMX() 函数与RANKX() 函数 100
3.7.1 SUMX() 函数的进一步研究 100
3.7.2 SUMX() 函数与RELATEDTABLE() 函数 . 107
3.7.3 以X 结尾的逐行处理函数的特点 108
3.7.4 有点儿不一样的RANKX() 函数 . 114
3.8 DAX 表达式与Power Pivot 数据模型密不可分 . 119
3.8.1 当前表、上级表与下级表 121
3.8.2 DAX 表达式与数据模型 .. 123
3.8.3 筛选的是列,控制的是表 126
第4 章 几个重要的DAX 函数再探讨 129
4.1 DAX 核心函数――CALCULATE() 函数 129
4.1.1 关于CALCULATE() 函数的一个重要事实 130
4.1.2 CALCULATE() 函数的基本能力 . 132
4.1.3 计算列公式中的CALULATE() 函数 134
4.1.4 CALCULATE() 函数的应用场景总结 139
4.2 FILTER() 函数与CALCULATE() 函数 139
4.3 多表模型中的ALL() 函数 142
4.3.1 ALL() 函数的参数是表中的一列 . 143
4.3.2 ALL() 函数的参数是一个表 146
4.3.3 ALL() 参数是一个表中的多列 147
4.3.4 Power Pivot 多表数据模型中关联字段的筛选效果 . 150
4.3.5 Power Pivot 多表数据模型中的ALL() 函数 . 153
4.4 直接筛选和交叉筛选 157
4.4.1 直接筛选判定函数ISFILTERED() . 157
4.4.2 交叉筛选判定函数ISCROSSFILTERED() . 157
4.5 单一值判断函数HASONEVALUE() . 162
4.6 筛选叠加函数KEEPFILTERS() 164
4.7 有点难度的ALLSELECTED() 函数 .. 167
4.8 ALLSELECTED() 函数的应用 172
4.9 VAR,复杂DAX 分步完成 . 173
第5 章 日期表与日期智能函数 . 180
5.1 日期表:标记与自动生成 181
5.2 与日期相关的“智能”函数185
5.2.1 SAMEPERIODLASTYEAR() 函数 . 185
5.2.2 DATESYTD() 函数 189
5.2.3 TOTALYTD() 函数 190
第6 章 DAX 中的一些重要概念与函数 . 192
6.1 Power Pivot 中的数据类型 192
6.2 逐行处理函数再探讨 194
6.3 CALCULATE() 函数再回顾 199
6.4 创建Power Pivot 数据模型中的临时维度表. 202
6.5 USERELATIONSHIP() 函数 205
6.6 EARLIER() 函数 . 209
第7 章 DAX 分析结果的表呈现 214
7.1 查询求值指令EVALUATE .. 214
7.2 用于表再造的函数 219
7.2.1 分组汇总函数SUMMARIZE() . 219
7.2.2 增加计算列函数ADDCOLUMNS() 224
7.2.3 构造新表函数SELECTCOLUMNS() 226
7.2.4 生成只有一行的表的函数ROW() .. 228
7.2.5 在EVALUATE 指令中使用度量值表达式 . 229
7.3 几个仿SQL 查询功能的DAX 函数 230
7.3.1 交集查询函数INTERSECT() . 230
7.3.2 交叉连接函数CROSSJOIN() . 232
7.3.3 将两个表做减法的函数EXCEPT() 233
7.3.4 连接表函数UNION() 234
7.3.5 IN 操作符与CONTAINSROW() 函数 235
第8 章 Power Pivot 与DAX 的综合案例 . 241
后记 264