PowerBi中CALCULATE怎么使用?

CALCULATE() 是 Power BI(DAX)中最核心、最强大的函数之一,它能让你在不同的上下文 中进行度量计算,可以说是"灵魂函数" 💡


✅ 一句话总结:

CALCULATE 用来 更改筛选条件后再进行计算,比如你想计算"某个条件下的销售额",就要用它!


🧠 基本语法:

DAX 复制代码
CALCULATE(<表达式>, <筛选条件1>, <筛选条件2>, ...)
  • <表达式>:通常是一个聚合函数,比如 SUM(), COUNT(), AVERAGE()
  • <筛选条件>:可以是列的筛选、FILTER() 表达式、ALL()REMOVEFILTERS()

🎯 示例 1:计算电子产品的销售额

DAX 复制代码
电子销售额 =
CALCULATE(
    SUM(Sales[Amount]),
    Product[Category] = "电子产品"
)

👉 意思是:在 Product[Category] = 电子产品 这个条件下,计算 Sales[Amount] 的总和。


🎯 示例 2:计算当前年销售额(结合时间智能)

DAX 复制代码
今年销售额 =
CALCULATE(
    SUM(Sales[Amount]),
    YEAR(Sales[Date]) = YEAR(TODAY())
)

🎯 示例 3:去掉某些筛选(使用 ALL()

DAX 复制代码
所有产品销售额 =
CALCULATE(
    SUM(Sales[Amount]),
    ALL(Product)
)

👉 不管当前页面筛选了哪个产品,都返回总销售额


🔥 常见搭配用法:

组合函数 用途
FILTER() 更复杂的多列或条件过滤
ALL() 移除某列或表的筛选
REMOVEFILTERS() ALL() 类似,语义更清晰
VALUES() 获取当前上下文的唯一值列表

🧠 小口诀:

💬 想让"计算"变聪明,就用 CALCULATE() 加条件!


🔧 示例实战:计算毛利润

假设你有:

  • Sales 表:有销售数量、销售金额
  • Product 表:有每件商品的成本价

你可以写一个利润度量字段:

DAX 复制代码
总利润 =
CALCULATE(
    SUMX(
        Sales,
        Sales[Quantity] * (RELATED(Product[Price]) - RELATED(Product[Cost]))
    )
)
相关推荐
2601_962077984 小时前
利用Python,四步掌握机器学习
python·机器学习·数据挖掘·数据分析·编程
躺柒5 小时前
读数据可视化23跨媒体数据(上)
信息可视化·数据分析·可视化·数据可视化·多媒体·超媒体·跨媒体
Mr数据杨7 小时前
汽车故障时间与类别预测实战 从 Kaggle 结构化赛题理解预测性维护建模
人工智能·数据分析·kaggle竞赛
SelectDB技术团队8 小时前
Apache Doris 多表 Join 比 Starrocks 更快?ClickBench 与 RTABench 实测对比
数据分析·高并发·技术选型·多表join·查询加速·复杂分析·高频查询
residual_fan8 小时前
持续对比强化学习(Continual Contrastive Reinforcement Learning)论文分享
人工智能·算法·数据挖掘·数据分析
Mr数据杨8 小时前
莫斯科公寓价格预测实战 从 Kaggle 房价回归题理解结构化建模
人工智能·数据分析·kaggle竞赛
Mr数据杨8 小时前
车辆保险价值预测实战 从 Kaggle 回归赛题理解保险定价建模
人工智能·数据分析·kaggle竞赛
今天AI了吗9 小时前
Codex 配置自定义 AI API 完整指南:从零到一接入你的专属模型
java·人工智能·python·数据分析·embedding
Aloudata9 小时前
语义层 vs MCP 工具层:Agent 调用数据时,语义应该放在哪一层
数据库·数据分析·chatbi·data agent·语义层
residual_fan10 小时前
特征级SMOTE(Feature-level SMOTE)论文分享
人工智能·算法·数据挖掘·数据分析