利用PowerQuery控制数据行数

在这里插入图片描述

PowerBI报表在开发的过程中,经常会遇到数据量非常庞大的情况,在这种情况下,本机连接数据源如果不进行特殊处理的话,那么刷新数据的时候可能会发生数据刷新时间过长、数据加载内存错误、开发过程中构建DAX卡顿等情况。

那么在实际开发中,我们应该如何处理呢?其实,在PowerQuery页面,我们可以对查询进行过滤处理的。

在PowerQuery中进行过滤处理,我们需要区分两种情况,一种是可以在连接数据源时构建SQL语句的,一种是不可以的,感兴趣的小伙伴可以翻阅官方文档关于查询折叠[1]的相关内容,这里就不赘述了。

案例:可构建SQL语句

白茶在本机搭建了一个临时的SQL Server数据库,我们来连接该数据库中的某张表。

在这里插入图片描述

结果如下:

在这里插入图片描述
在这里插入图片描述

在管理参数的面板下,我们需要创建如下参数:

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

接下来,我们来构建一个空查询

在这里插入图片描述

将如下PQ代码,通过高级编辑器,复制进去:

let Sources = if LimitValidity then " TOP " & "(" & Limit & ")" else "" in Sources

结果如下:

在这里插入图片描述

现在,我们可以对之前的连接到的表进行过滤处理了,进入到高级编辑器,修改其PQ代码:

let源 = Sql.Database(".", "CaseData", [Query="SELECT" & UseingFilter & " * FROM Fact_Sales "])
in源

结果如下:

在这里插入图片描述

案例:不可构建SQL语句

因为环境的关系,白茶本地没有相对应的数据库,还是用SQL Server来给大家举例。

继续连接到刚才的表:

在这里插入图片描述

我们重新创建一个空查询,将如下代码粘贴进去:

(x) => let Sources = if LimitValidity then Table.FirstN(x, Number.From(Limit)) else x in Sources

在这里插入图片描述

修改FactSales的PQ代码:

let源 = Sql.Databases("."),CaseData = 源{[Name="CaseData"]}[Data],dbo_Fact_Sales = CaseData{[Schema="dbo",Item="Fact_Sales"]}[Data],UseingTop = UseingTop(dbo_Fact_Sales)
inUseingTop

结果如下:

在这里插入图片描述

云端设置

当我们完成本地开发工作,将报表发布到云端后,还需要调整参数,才能保证后续数据正常刷新。

在云端数据集设置中,找到参数设置,将LimitValidity参数修改为False即可。

在这里插入图片描述

注意事项

  • 在连接数据库的时候,切忌SELECT * 这种操作,因为会查询到一些无用列;

  • 表查询调整后,会出现运行此本机数据库查询需要权限 这个提示,点击编辑权限后,点击运行即可;

  • 本地在刷新数据时,受限于本机电脑的配置以及登录账号,量级较大的数据在本地无法刷新;

  • 云端根据高级容量的不同配置,可以满足不同场景下的大规模数据刷新;

  • 针对不同的数据库,查询用语也是不同的,例如:SQL Server支持TOP函数,而MySql则支持Limit函数,白茶这里仅是提供一种思路给到大家。

引用链接

[1] 查询折叠: https://learn.microsoft.com/zh-cn/power-query/query-folding-basics

在这里插入图片描述
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/web/24330.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

不确定性+电动汽车!含高比例新能源和多类型电动汽车的配电网能量管理程序代码!

前言 能源供应的可持续性和清洁性是当今世界共同关注的议题,配电网与可再生能源发电相结合,通过多能互补和梯级利用,在不同时空取长补短,提高能源利用率,减少温室气体排放,是解决能源短缺和环境问题的有效…

[职场] 关于薪酬需要知道的两个知识点 #知识分享#知识分享

关于薪酬需要知道的两个知识点 薪酬问题是面试过程中比较核心的问题,也是每次面试必问的。如果你进入到面试的后一阶段,这类问题可以让面试官或企业判断求职者的要求是否符合企业的薪酬标准,并进一步判断求职者对自身价值的认可程度。关于薪…

数据结构之快速排序算法(快排)【图文详解】

P. S.:以下代码均在VS2019环境下测试,不代表所有编译器均可通过。 P. S.:测试代码均未展示头文件stdio.h的声明,使用时请自行添加。 博主主页:LiUEEEEE                        …

【Java数据结构】详解Stack与Queue(三)

🔒文章目录: 1.❤️❤️前言~🥳🎉🎉🎉 2. 队列(Queue) 2.1队列的概念 2.2队列的方法 2.3队列的使用 2.4循环队列 循环队列的介绍 循环队列图 如何区分循环队列是满还是空…

外挂知识库的基本知识与内容

外挂知识库 1.什么是rag? RAG,即LLM在回答问题或生成文本时,会先从大量文档中检索出相关的信息,然后基于这些信息生成回答或文本,从而提高预测质量。 2.外挂知识库的实现思路 只用几十万量级的数据对大模型进行微调并不能很好…

第五十六周:文献阅读

目录 摘要 Abstract 文献阅读:应用于地表水总磷浓度预测的可解释CEEMDAN-FE-LSTM-Transformer混合模型 一、现有问题 二、提出方法 三、方法论 1、CEEMDAN(带自适应噪声的完全包络经验模式分解) 2、FE(模糊熵 &#xff09…

Vue3【十】07使用ref创建基本类型的响应式数据以及ref和reactive区别

Vue3【十】07使用ref创建基本类型的响应式数据以及ref和reactive区别 ref 也可以创建对象类型的响应式数据,不过要使用.value ref 处理对象数据的时候,底层数据还是reactive格式的 reactive 重新分配一个新对象,会失去响应式可以使用Object.a…

保姆级 | MySQL的安装配置教程(非常详细)

一、下载Mysql 官网步骤 MySQLhttps://www.mysql.com/进入官网首页 点击DOWNLOADS 点击MySQL Community (GPL) Downloads 点击 小页面直接进入 MySQL :: Download MySQL Installerhttps://dev.mysql.com/downloads/installer/点击“Download”下载最新版本,其他…

【吊打面试官系列】MySQL 中 InnoDB 支持的四种事务隔离级别名称,以及逐级之间的区别?

大家好,我是锋哥。今天分享关于 【MySQL 中 InnoDB 支持的四种事务隔离级别名称,以及逐级之间的区别?】面试题,希望对大家有帮助; MySQL 中 InnoDB 支持的四种事务隔离级别名称,以及逐级之间的区别&#xf…

碳素钢化学成分分析 螺纹钢材质鉴定 钢材维氏硬度检测

碳素钢的品种主要有圆钢、扁钢、方钢等。经冷、热加工后钢材的表面不得有裂缝、结疤、夹杂、折叠和发纹等缺陷。尺寸和允许公差必须符合相应品种国家标准的要求。 具体分类、按化学成分分类 : 碳素钢按化学成分(即以含碳量)可分为低碳钢、中…

机器学习笔记 - stable diffusion web-ui安装教程

一、Stable Diffusion WEB UI 屌丝劲发作了,所以本地调试了Stable Diffusion之后,就去看了一下Stable Diffusion WEB UI,网络上各种打包套件什么的好像很火。国内的也就这个层次了,老外搞创新,国内跟着屁股后面搞搞应用层,就叫大神了。 不扯闲篇了,我们这里从git源码直接…

问题:11单位内部人员对行政机关作出的行政处分不服,可申请行政复议. #其他#微信

问题:11单位内部人员对行政机关作出的行政处分不服,可申请行政复议. 参考答案如图所示

问题:脾梗塞时,下列情况最符合的是 #职场发展#知识分享#媒体

问题:脾梗塞时,下列情况最符合的是 A、脾肿大 B、脾区摩擦感 C、两者均有 D、两者均无 参考答案如图所示

uniapp视频组件层级太高,解决方法使用subNvue原生子体窗口

目录 前言 先看一下uniapp官网的原话: subNvue的一些参数介绍 subNvues使用方法: 绑定id 显示 subNvue 弹出层 subNvue.show() 参数信息 subNvue.hide() 参数信息 在使用subNvue 原生子体窗口 遇到的一些问题 前言 nvue 兼容性 以及使用方式 控…

把ROS程序作为桌面图标双击启动

1 写launch文件 把ROS程序写成一个launch文件&#xff0c;例如 powerline_with_rviz.launch <launch><!-- Load camera parameters --><rosparam file"$(find choose_powerline)/config/camera_params.yaml" command"load"/><!-- …

深入理解并应用KTT求解约束性极值问题

KT 很简单&#xff0c;口诀记心端&#xff0c;等式求最优&#xff0c;不等式验证——小飞打油 以后每期尝试编一句口诀&#xff0c;帮助大家记忆&#xff0c;可以是打油诗&#xff0c;也可以是类似“奇变偶不变&#xff0c;符号看象限”的口诀&#xff0c;如果编的不好&#xf…

Docker 常用命令以及镜像选择

目录 1.Docker基本组成 2.镜像选择 2.1、镜像推荐选择方案 2.2版本选择 3.Docker 命令 3.1镜像管理 拉取镜像&#xff1a; 列出镜像&#xff1a; 删除镜像&#xff1a; 构建镜像&#xff1a; 3.2容器管理 运行容器 列出运行中的容器和所有容器 停止容器 启动重启…

为什么要将Modbus转成MQTT

什么是Modbus Modbus 是一种串行通信协议&#xff0c;最初由Modicon&#xff08;现在的施耐德电气Schneider Electric&#xff09;于1979年开发&#xff0c;用于可编程逻辑控制器&#xff08;PLC&#xff09;之间的通信。Modbus协议设计简单&#xff0c;易于部署和维护&#xf…

从零入手人工智能(2)——搭建开发环境

1.前言 作为一名单片机工程师&#xff0c;想要转型到人工智能开发领域的道路确实充满了挑战与未知。记得当我刚开始这段旅程时&#xff0c;心中充满了迷茫和困惑。面对全新的领域&#xff0c;我既不清楚如何入手&#xff0c;也不知道能用人工智能干什么。正是这些迷茫和困惑&a…

M1Pro 使用跳板机

Mac (M1 Pro) 通过Iterm2 使用跳板机 1、由于堡垒机&#xff08;跳板机&#xff09;不能支持mac系统终端工具&#xff0c;只支持xshell等win生态。所以我们需要先安装iterm2 装iterms教程 这里头对rz、sz的配置不详细。我们可以这样配置&#xff1a; where iterm2-send-zmod…