PowerBI动态M查询参数
PowerBI在4月的更新中正式加了动态M参数,官方说这非常适用于那些那些需要在不牺牲报表交互的情况下提升查询性能的用户。然而事实上这个功能只支持DirectQuery连接的数据源。然而因为性能的关系,其实是在商业报表中我们一般是不建议采用这种方式,虽然直连可以实现伪实时更新,但是不支持复杂的计算,很难满足业务需求。
先不说应用场景,我们还是来体验下这个功能。
导入数据
首先采用DirectQuery方式导入两张表,这里使用的是官方的示例数据,如果还没下载该示例数据库的用户可到官方下载:
https://docs.microsoft.com/zh-cn/sql/samples/adventureworks-install-configure?view=sql-server-ver15&tabs=ssms
新建参数
在新建参数前我们先来做一个操作,只保留销售表前100行的数据,这样接下来就会方便我们应用参数值
新建一个参数,注意这里我们使用的其实是文本类型。
在销售表中应用参数,选中销售表,选择高级编辑器,替换为刚建立的参数,因为我们前面参数创建的是文本,所以这里需要加一步,将参数转成数字。
既然是动态查询,那我们肯定还需要一张还切换查询显示的行数的,所以接下来新建一张表,这里就直接输入数据就好了。这里我们新建的做为切片器用的表里TopN列是文本,这也是为什么前面我们参数也是文本的原因,因为后面还要将该列与参数进行绑定。
因为最终我们还需要使用TopN中的值来传递到销售表的查询中去,所以还需要对销售表的代表进行改造,(本来想设置为选择More时是全部数据的,但不好录制gif,就改成了1)
关闭并应用回到前端页面
配置参数表
切换到模型视图,选中TopN表,选择TopN列,然后高级,绑定到参数,选择我们创建的Top参数。
回到画布,查看效果
扩展阅读
其实在管道部署时也会用到参数配置,只不过那里是需要对数据源进行参数化,这里是需要对查询进行参数化。
更多内容也可查看官方文档
https://docs.microsoft.com/zh-cn/power-bi/connect-data/desktop-dynamic-m-query-parameters
杂七杂八
最近也是在反思,为什么公司Wiki库里写了那么多文档,但是同事遇到问题时还是不会,是我写的不够清楚,查询不方便,还是其他原因。所以目前在尝试对写过的文章或记过的笔记按照书本目录的方式重新组合,也有考虑过上gitbook写成开源书,但这周体验下来感觉效果并不好,所以还是在笔记软件上整理吧。目前才整理了一部分,通过这次整理也发现好多内容其实自己没有写过,虽然很多内容网上已经太多人写过了,但后面可能还是会再结合自己的经验也写一下。
本篇文章来源于微信公众号: PowerBI木小桼