当前位置: 首页 > news >正文

week07day03(power bi dax公式 零售数据业务分析)

一.  切片器(筛选)相关的三个函数

1.all (all后面的数据意思是 不受其影响)

#ALL 筛选的是 筛选器 或 切片器#计算 销售金额 ,并且 不受到 门店ID 控制
计算金额 = CALCULATE(SUM('销售表'[金额]),ALL('销售表'[门店ID]))#计算 销售金额 ,并且 不受到 销售表中任何字段 的 控制
计算金额 = CALCULATE(SUM('销售表'[金额]),ALL('销售表'))

2. ALLEXCEPT (其后的数据存在,其他都失效,图中只有产品id有效,其他都失效)

#ALLEXCEPT 排除指定表或列 之外 其它表或列的 筛选器 功能CALCULATE(sum([金额]),ALLEXCEPT('销售表','销售表'[产品ID]))

3. ALLSELECTED : 指定谁 谁就没有筛选功能,保留其他表或列的筛选器

#失效 : ALLEXCEPT 清除指定表或列 的 筛选器 功能 , 保留其它 表或列 的 筛选器 功能
CALCULATE(sum([金额]),ALLSELECTED('销售表','销售表'[产品ID]))

二. 关系函数

1. 事实表:

        核心业务表,事实表包含与业务过程或事件相关的数值、度量或事实数据,例如销售金额、数量、成本等。事实表记录了业务事件的具体数值。

2.维度表:

  • 扩展表
  • 维度表包含描述性的、非数值的属性信息,例如产品名称、地理位置、时间等。维度表提供了用于对事实数据进行分类和分组的维度

3. RELATED 关系函数

在事实表中添加维度表中的一列内容,#RELATED : 将维度表 当中的 "借用(复制)" 列 到 事实表

列 = RELATED('门店信息表'[门店名称])

4. RELATEDTABLE

当两个表的行数不相同需要sumx进行辅助,将事实表中的列 复制 到 维度表

列 = SUMX(RELATEDTABLE('销售表'),[金额])

三. 日历函数   (CALENDAR函数) (重新看)

注意: 如果是销售订单的话,不是每天都有订单,数据的日期会产生断层,需要自己产生连贯的时间

#case 变量 when 值
#case when 变量=值
#字段 in (1,2,3)
日期时间表 = -- 当前是一个变量-- 加了Var 以后 返回的结果 必须写在Return之后VAR BeginDate = MIN('销售表'[日期]) --"2019/10/10"VAR EndDate = MAX('销售表'[日期])   --"2020/10/10"
RETURN-- 添加列ADDCOLUMNS(-- 从表当中挑选列SELECTCOLUMNS(-- CALENDAR : 日历函数返回的结果是一张表CALENDAR( DATE(YEAR(BeginDate)-1,1,1),DATE(YEAR(EndDate)+1,1,1)), -- select Date as 日期"日期",[Date]),"年",YEAR([日期]),"季度",SWITCH(TRUE(),MONTH([日期]) IN {1,2,3} , 1 ,MONTH([日期]) IN {4,5,6} , 2 ,MONTH([日期]) IN {7,8,9} , 3 ,MONTH([日期]) IN {10,11,12} , 4 ),"年季",YEAR([日期])*10 +SWITCH(TRUE(),MONTH([日期]) IN {1,2,3} , 1 ,MONTH([日期]) IN {4,5,6} , 2 ,MONTH([日期]) IN {7,8,9} , 3 ,MONTH([日期]) IN {10,11,12} , 4 ),"季度名称" , "Q" &SWITCH(TRUE(),MONTH([日期]) IN {1,2,3} , 1 ,MONTH([日期]) IN {4,5,6} , 2 ,MONTH([日期]) IN {7,8,9} , 3 ,MONTH([日期]) IN {10,11,12} , 4 ),"月",MONTH([日期]),"年月",YEAR([日期])*100 + MONTH([日期]),"月份名称" , "M" & MONTH([日期]),"周",WEEKNUM([日期],2),"年份周数",YEAR([日期])*100 + WEEKNUM([日期],2),"星期",WEEKDAY([日期],2),"日",DAY([日期]))

#ADDCOLUMNS("表","名称1","表达式1".....) 给指定的表添加 计算列  , 
返回的结果是 表#SELECTCOLUMNS("表","名称1","表达式1".....) 选择指定表 中的列 ,并对列重命名 ,
返回的结果是 表#CALENDAR(start,end) 返回一段连续日期 的表 ,表中包含一个默认字段[Date]
# WEEKDAY([日期],2) 返回 列 或 度量值 , 1是从周天开始  ,2 从周一开始
# WEEKNUM([日期],2) 一年中的第几周
#VAR + RETURN : VAR定义变量的

四. USERELATIONSHIP函数

        将销售表的日期和日期时间表连接,统计是按照日期时间表的日期进行计算

# userelationship: 表明 列(本表) 和列(其他表) 之间的关系, 不返回任何结果CALCULATE(SUM([数量]),'销售表'[金额]>0,USERELATIONSHIP('销售表'[日期],'日期时间表'[日期]))

五. 时间智能函数

dateadd  返回的是单列的表

   DATEADD('日期时间表'[日期],-1,YEAR)

DATESBETWEEN

    DATESBETWEEN('日期时间表'[日期],DATE(2019,6,1),DATE(2019,06,30)),

calculate(sum([数量]),filter(DATESBETWEEN('日期时间表'[日期],DATE(2019,6,1),DATE(2019,06,30)),TRUE()) 
)calculate(sum([数量]),AND('日期时间表'[日期] >= DATE(2019,6,1),'日期时间表'[日期] <= DATE(2019,6,30))
)calculate(sum([数量]),'日期时间表'[日期] >= DATE(2019,6,1),'日期时间表'[日期] <= DATE(2019,6,30)
)calculate(sum([数量]),'日期时间表'[日期] >= DATE(2019,6,1) && '日期时间表'[日期] <= DATE(2019,6,30)
)

计算累计值

TOTALMTD: 最大的极限只能算到 月总和 ,不可以算到季度和年。(Month-to-Date)

# 按照日期时间表'[日期],且金额大于0的数据进行 金额求和

TOTALMTD( sum([金额]),'日期时间表'[日期],'销售表'[金额] >0)

六.零售数据业务分析

  1. 传统零售的Excel困境:

  • 数据量限制(500MB)
  • 不能对数据进行实时刷新

   2. 新零售系统

  •  定制二维码 :通过二维码,可以确定从什么店铺注册的
  • 集合 智能终端 获取到 销售数据和会员消费数据
  • 商家有ERP系统,里面可以显示各个区域 和 门店中的库存
  • 最终通过各方 汇集的数据, 形成数据看板

  3. 广域流量

  • 投流 
  • 要保证当前的品牌能做的大

  4.私域流量

  • up主引流、文章、微信的公众号
  • 要保证当前品牌可以做的稳

  

七. 数据来源

1. 有独立站

  • 公司、厂店一体有自己的品牌, 公司内部一般会搭建 大数据仓库
  • 独立站一般会 埋点, 可以获取 用户的行为数据。下单以后会存在 经营数据

2.  只有平台的店铺

  • 千牛、 生意参谋(有限时间的订单数据)。
  • 店透视和店侦探(竞品分析)
  • ERP(订单数据 综合数据)
  • CRM(会员数据)
  • WRM(仓库数据)

3.信息孤岛

  • 公司里面有多个ERP和平台工具,存在"信息孤岛", 则打通 信息孤岛

八. 数据分析的价值

1. 分析当前业务开展情况是否良好

  •  会员情况:
    • 会员总数是否增加
    • 老会员留存率
    • 会员精准群体
  • 库存情况:
    • 活动库存
    • 流程和审核
  • 关联情况:
    • 打包组合

规避风险 ,精准营销

九. 模型的关系

  • 星形模型
  • 雪花模型
  • 星座模型:多个表之间有交叉(维度表交叉还特别多)
  • 梳状模型: 主表之间多有关系,维度表之间没啥关系

十. 归纳表的创建

1. 创建方法

  • 将维度表前添加前缀
  • 将事实表前添加前缀
  • 模型之间关系的建立
  • 方法:选择主页  输入数据 创建空列   将模块选择到模型视图,点击任意表,查看右侧属性栏,标记 显示文件夹(可以将度量值 或 列 分包存储)

相关文章:

week07day03(power bi dax公式 零售数据业务分析)

一. 切片器(筛选)相关的三个函数 1.all &#xff08;all后面的数据意思是 不受其影响&#xff09; #ALL 筛选的是 筛选器 或 切片器#计算 销售金额 &#xff0c;并且 不受到 门店ID 控制 计算金额 CALCULATE(SUM(销售表[金额]),ALL(销售表[门店ID]))#计算 销售金额 &#x…...

rembg报错onnxruntime_providers_tensorrt.dll

报错&#xff1a; 2024-03-16 04:16:59.4413827 [E:onnxruntime:Default, provider_bridge_ort.cc:1534 onnxruntime::TryGetProviderInfo_TensorRT] D:\a_work\1\s\onnxruntime\core\session\provider_bridge_ort.cc:1209 onnxruntime::ProviderLibrary::Get [ONNXRuntimeErro…...

精酿啤酒:一口啤酒,一份享受

在繁华的都市生活中&#xff0c;我们总是匆匆忙忙&#xff0c;追求着各种目标和成就。然而&#xff0c;在这个过程中&#xff0c;我们往往忽略了生活的本质&#xff0c;那就是享受。而Fendi Club 啤酒&#xff0c;正是为那些追求品质生活的都市精英们量身打造的。 Fendi Club啤…...

git报: “fatal: detected dubious ownership in repository“

“fatal: detected dubious ownership in repository”的中文翻译是&#xff1a;“致命错误&#xff1a;检测到仓库中存在可疑的所有权问题”。 这句话意味着 Git 在检查代码仓库时发现所有权存在问题&#xff0c;可能是由于文件或目录的所有权与 Git 仓库预期的所有权不匹配。…...

代码随想录算法训练营第27天|93.复原IP地址、78.子集、90.子集二

目录 一、力扣93.复原IP地址1.1 题目1.2 思路1.3 代码1.4 总结 二、力扣78.子集2.1 题目2.2 思路2.3 代码2.4 总结 三、力扣90.子集二3.1 题目3.2 思路3.3 代码3.4 总结 一、力扣93.复原IP地址 &#xff08;比较困难&#xff0c;做起来很吃力&#xff09; 1.1 题目 1.2 思路 …...

Java微服务轻松部署服务器

我们在日常开发微服务之后需要再服务器上面部署&#xff0c;那么如何进行部署呢&#xff0c;先把微服务的各个服务和中间件以及对应的端口列举出来&#xff0c;都打包成镜像&#xff0c;以及前端代码部署的nginx&#xff0c;使用docker-compose启动&#xff0c;访问服务器nginx…...

Wordpress站点通过修改.htaccess 设置重定向实现强制 https 访问

要在WordPress站点上通过修改.htaccess文件实现强制HTTPS访问&#xff0c;您可以按照以下步骤进行操作&#xff1a; 登录到WordPress站点管理后台。 在文件管理器或通过FTP访问网站根目录&#xff0c;找到并打开名为 .htaccess 的文件。 在打开的文件中添加以下代码&#xf…...

人大金仓助力国家电网调度中心培养国产数据库专家人才

近日,为进一步提升调度自动化安全可靠水平,提高电网数据应用效能,人大金仓助力国家电网调度中心培养国产数据库专家人才。 调度自动化系统拥有海量电网数据资源,是支撑电网安全经济优质运行的重要保障。数据库是调度自动化系统稳定运行的基石之一,其结构严谨、运行稳定、扩展灵…...

什么是增强型SSL证书?购买一张需要多少钱?

增强型SSL证书是一种提供更高级别安全验证与用户信任度的网络安全工具&#xff0c;也被称为EV证书。相较于DV&#xff08;域名验证&#xff09;和OV&#xff08;组织验证&#xff09;证书&#xff0c;它通过严格的身份核实流程确保网站所有者的合法性和真实性。 首先&#xff0…...

C++:函数传参到函数执行结束发生了什么

首先要明确两个概念 函数实参的入栈从右向左栈区从高地址向低地址偏移 接下来看下面一段代码 void fun(int a,int b,int c){std::cout<<&a<<" "<<&b<<" "<<&c<<std::endl; } int main(){fun(1,2,3); }…...

QT中dumpcpp以及dumpdoc使用

qt中调用COM的方式方法有四种&#xff0c;参考解释在 Qt 中使用 ActiveX 控件和 COM (runebook.dev) 介绍dumpcpp的使用方法Qt - dumpcpp 工具 (ActiveQt) (runebook.dev)&#xff1a; 在安装好了的qt电脑上&#xff0c;通过powershell窗口来实现&#xff0c;powershell比cmd要…...

RPM与DNF的操作实践

这几课有三个目标&#xff1a; 第一步&#xff1a;先配置软件源 跳转到yum.repos.d目录&#xff0c;用vim创建一个openeuler_x84_64.repo文件。这个文件就是我们将会用到的软件源。 我们在里面添加这些东西&#xff0c;保存并退出即可。 然后&#xff0c;我们用yum list all就…...

车道线检测之LaneNet

论文&#xff1a;Towards End-to-End Lane Detection: an Instance Segmentation Approach Github&#xff1a;https://github.com/MaybeShewill-CV/lanenet-lane-detection?tabreadme-ov-file 论文提出一种车道线检测网络LaneNet&#xff0c;该网络以enet为主干网络结构&…...

MySQL连接数不足导致服务异常GetConnectionTimeoutException

文章目录 场景复现解决方案一、调整连接数二、优化程序 场景复现 已经上线正常运行的项目突然很多功能无法使用&#xff0c;查看程序日志发现MySQL报错&#xff0c;异常信息: Could not open JDBC Connection for transaction; nested exception is com.alibaba.druid.pool.Ge…...

软考76-上午题-【面向对象技术3-设计模式】-创建型设计模式01

一、创建型设计模式一览 二、创建型设计模式 2-1、创建型设计模式的概念 一个类创建型模式使用继承改变被实例化的类&#xff1b; 一个对象创建型模式将实例化委托给另一个对象。 对应java的new一个对象。 2-2、简单工厂模式&#xff08;静态工厂方法&#xff09; 简单工厂…...

Matlab 双目相机标定(内置函数)

文章目录 一、简介二、实现代码三、实现效果参考资料一、简介 相机标定的目的就是要找到从世界坐标转换为图像坐标所用到的投影P矩阵各个系数(即相机的内参与外参)。具体过程如下所述: 1、首先我们需要获取一个已知图形的图像(这里我们使用MATLAB所提供的数据)。 2、找到同…...

【博客7.4】缤果Qt5_TWS串口调试助手V2.0 (高级篇)

超级好用的Qt5_TWS耳机串口调试助手 开发工具: qt-opensource-windows-x86-5.14.2 (编程语言C) 目录 前言 一、软件概要&#xff1a; 二、软件界面&#xff1a; 1.App演示 三、获取 >> 源码以及Git记录&#xff1a; 总结 前言 串口调试助手支持常用的50bps - 10M…...

CSS案例-4.padding导航栏练习

效果 相关数据: 上边框:3px,颜色#ff8500 下边框:1px,颜色#edeef0 背景颜色:#fcfcfc 高度:41px 内边距20px 字体颜色#4c4c4c 知识点 盒子边框border 属性 作用 border-width 定义边框粗细,单位px border-style 边框的样式 border-color 边框颜色 边框样式...

5.1.4.2、【AI技术新纪元:Spring AI解码】Llama2 Chat

Llama2 Chat Meta 的 Llama 2 Chat 是 Llama 2 系列大型语言模型的一部分。它在基于对话的应用程序中表现出色,参数规模范围从 70 亿到 700 亿不等。利用公共数据集和超过 100 万次人类注释,Llama Chat 提供了上下文感知的对话。 通过从公共数据源获取的 2 万亿标记进行训练…...

后台发送GET/POST方法

前言: 1,get请求 2,post请求 3,post,get通用方法 4,其他的get,post写法 正文: 1,get请求 import org.apache.commons.httpclient.HttpClient; import org.apache.commons.httpclient.HttpException; import org.apache.commons.httpclient.HttpStatus; import or…...

RestClient

什么是RestClient RestClient 是 Elasticsearch 官方提供的 Java 低级 REST 客户端&#xff0c;它允许HTTP与Elasticsearch 集群通信&#xff0c;而无需处理 JSON 序列化/反序列化等底层细节。它是 Elasticsearch Java API 客户端的基础。 RestClient 主要特点 轻量级&#xff…...

Java 语言特性(面试系列2)

一、SQL 基础 1. 复杂查询 &#xff08;1&#xff09;连接查询&#xff08;JOIN&#xff09; 内连接&#xff08;INNER JOIN&#xff09;&#xff1a;返回两表匹配的记录。 SELECT e.name, d.dept_name FROM employees e INNER JOIN departments d ON e.dept_id d.dept_id; 左…...

【WiFi帧结构】

文章目录 帧结构MAC头部管理帧 帧结构 Wi-Fi的帧分为三部分组成&#xff1a;MAC头部frame bodyFCS&#xff0c;其中MAC是固定格式的&#xff0c;frame body是可变长度。 MAC头部有frame control&#xff0c;duration&#xff0c;address1&#xff0c;address2&#xff0c;addre…...

Oracle查询表空间大小

1 查询数据库中所有的表空间以及表空间所占空间的大小 SELECTtablespace_name,sum( bytes ) / 1024 / 1024 FROMdba_data_files GROUP BYtablespace_name; 2 Oracle查询表空间大小及每个表所占空间的大小 SELECTtablespace_name,file_id,file_name,round( bytes / ( 1024 …...

postgresql|数据库|只读用户的创建和删除(备忘)

CREATE USER read_only WITH PASSWORD 密码 -- 连接到xxx数据库 \c xxx -- 授予对xxx数据库的只读权限 GRANT CONNECT ON DATABASE xxx TO read_only; GRANT USAGE ON SCHEMA public TO read_only; GRANT SELECT ON ALL TABLES IN SCHEMA public TO read_only; GRANT EXECUTE O…...

【Web 进阶篇】优雅的接口设计:统一响应、全局异常处理与参数校验

系列回顾&#xff1a; 在上一篇中&#xff0c;我们成功地为应用集成了数据库&#xff0c;并使用 Spring Data JPA 实现了基本的 CRUD API。我们的应用现在能“记忆”数据了&#xff01;但是&#xff0c;如果你仔细审视那些 API&#xff0c;会发现它们还很“粗糙”&#xff1a;有…...

uniapp微信小程序视频实时流+pc端预览方案

方案类型技术实现是否免费优点缺点适用场景延迟范围开发复杂度​WebSocket图片帧​定时拍照Base64传输✅ 完全免费无需服务器 纯前端实现高延迟高流量 帧率极低个人demo测试 超低频监控500ms-2s⭐⭐​RTMP推流​TRTC/即构SDK推流❌ 付费方案 &#xff08;部分有免费额度&#x…...

NFT模式:数字资产确权与链游经济系统构建

NFT模式&#xff1a;数字资产确权与链游经济系统构建 ——从技术架构到可持续生态的范式革命 一、确权技术革新&#xff1a;构建可信数字资产基石 1. 区块链底层架构的进化 跨链互操作协议&#xff1a;基于LayerZero协议实现以太坊、Solana等公链资产互通&#xff0c;通过零知…...

Redis数据倾斜问题解决

Redis 数据倾斜问题解析与解决方案 什么是 Redis 数据倾斜 Redis 数据倾斜指的是在 Redis 集群中&#xff0c;部分节点存储的数据量或访问量远高于其他节点&#xff0c;导致这些节点负载过高&#xff0c;影响整体性能。 数据倾斜的主要表现 部分节点内存使用率远高于其他节…...

CMake控制VS2022项目文件分组

我们可以通过 CMake 控制源文件的组织结构,使它们在 VS 解决方案资源管理器中以“组”(Filter)的形式进行分类展示。 🎯 目标 通过 CMake 脚本将 .cpp、.h 等源文件分组显示在 Visual Studio 2022 的解决方案资源管理器中。 ✅ 支持的方法汇总(共4种) 方法描述是否推荐…...