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]))
    )
)
相关推荐
Databend20 小时前
2KB histogram 背后:Databend 如何低成本追踪长尾延迟
大数据·数据分析·agent
Aloudata技术团队1 天前
正当红的 Context Layer 到底是什么?
数据分析
饼干哥哥8 天前
开源Skills|搭建亚马逊动态关键词库系统,每天抓SSS级机会词
人工智能·深度学习·数据分析
倔强的石头_10 天前
企业工商数据源站点:无验证无拦截,批量获取工商数据完整方案
数据分析
hboot16 天前
AI工程师第二课 - 数据处理
人工智能·python·数据分析
王小王-12317 天前
基于 Hive 的网易云音乐数据分析及可视化系统
hive·hadoop·数据分析·音乐数据分析·网易云音乐分析·hive音乐分析·hadoop网易云
Database_Cool_17 天前
大规模数据分析降本指南:AnalyticDB Serverless 弹性架构实战
数据仓库·阿里云·架构·数据分析·serverless
YangYang9YangYan17 天前
2026初入职场学习数据分析的价值
学习·数据挖掘·数据分析
砚底藏山河17 天前
沪深A股:如何获取基金持股数据
java·python·数据分析·maven
jarreyer17 天前
【数据分析绘图】excel绘图和bi工具区别
数据挖掘·数据分析·excel