DAX公式详解
个人是在2018年开始深入接触微软Power Bi,在2016年时有过初步的了解,不过因工作的原因,没有去实际多实践。
要学会Power Bi,那么就必须深入了解DAX,而要理解DAX公式其中的原理,那么就必须去理解SQL。
就DAX公式和SQL(SELECT 、SUM、GROUP BY )等价语句对比,方便理解DAX的原理
SUMMARIZE
FILTER(表,筛选条件) 返回的是一张表(切记),它不能单独使用,就像SQL中的WHERE
CALCULATE(计算表达式,筛选1, 筛选条件2 ...)
CALCULATETABLE
在DAX公式中,CALCULATE和FILTER必须完全理解
下面详细讲解下CALCULATE ,可以理解为定义一个DAX公式计算
任何一个DAX公式都需要一个CALCULATE
下面介绍DAX公式与SQL语句运行原理
查询userinfo表的所有行
**DAX** **SQL**
EVALUATE >> SELECT *
userinfo FROM userinfo
连接查询
**DAX** **SQL**
EVALUATE SELECT
FILTER ( >> FROM userinfo AS U
userinfo, JOIN casH AS C
RELATED(cash['userid']) ='2958460' ON U.userid = C.userid
) WHERE U.userid ='2958460'
选择前几行:(userinfo用户表,predeposit字段为余额,根据余额进行排序,返回前5行)
**DAX** **SQL**
EVALUATE SELECT top 5 *
TOPN(5,userinfo,predeposit) FROM userinfo
order by predeposit