dax powerbi 生成表函数_Power BI |DAX函数のCALCULATETABLE、CALENDAR函数以及相关表生成函数...

CALCULATETABLE

语法结构:CALCULATETABLE(表,[筛选器1],……)

第一个参数为表,第二个参数为筛选器,筛选器可以有多个。

实操举例:数据集:商品销售明细表.xlsx

关注公众号获取数据:耶浓薄荷

1.筛选出江苏省的所有明细

=CALCULATETABLE('商品销售明细表','商品销售明细表'[省市.省份]="江苏省")

2.筛选出销售额大于1000的所有明细

=CALCULATETABLE('商品销售明细表','商品销售明细表'[销售额]>1000)

3.计算江苏省销售额大于1000的订单数

= COUNTROWS(

CALCULATETABLE('商品销售明细表','商品销售明细表'[省市.省份]="江苏省",'商品销售明细表'[销售额]>1000))

4.计算浙江省产生多少订单数(与FILTER一起用)

= COUNTROWS(

CALCULATETABLE('商品销售明细表',

FILTER('省市','省市'[省份]="浙江省")))

CALCULATETABLE函数返回的是表,因此需要结合其他函数创建度量值计算数值

CALENDAR

语法结构:CALENDAR(StartDate,EndDate)

1.创建2018年1月1日至2019年1月1日的日期表

CALENDAR(DATE(2018,1,1),DATE(2019,1,1))

2.返回日期表中所有日期

= CALENDAR(

MINX('日期表','日期表'[年度月份]),

MAXX('日期表','日期表'[年度月份])

)

CALENDAR同样返回的是表,无法单独使用。

实例展示:

销售门店表 =

GENERATE (

ADDCOLUMNS (

CALENDAR ( DATE ( 2019, 1, 1 ), TODAY () ),

"月", MONTH ( [Date] ),

"销量", RANDBETWEEN ( 0, 1000 )

),

DATATABLE ( "门店", STRING, { { "南京" }, { "苏州" }, { "无锡" }, { "常州" } } )

)

该表涉及到的函数有 GENERATE,ADDCOLUMNS,DATATABLE下面来分别介绍下这三个函数。

ADDCOLUMNS

语法结构:ADDCOLUMNS(表,名称1,表达式1,……)

返回具有DAX表达式指定的新列的表,ADDCOLUMNS顾名思义增加列,可以在表中增加许多列。DATATABLE

语法结构:DATATABLE(名称1,类型1,……,数据)

返回具有以内联方式定义的数据的表。GENERATE

语法结构:GENERATE(Table1,Table2)

为Table1中的每一行计算第二个表达式,返回第一个表与这些结果的笛卡尔积。

说到笛卡尔积,还有另一个表函数CROSSJOIN:CROSSJOIN

语法结构:CROSSJOIN(表1,……)

返回指定表的笛卡尔积后的表。

下一章讲一讲另一个表函数-SUMMARIZE

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值