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]))
    )
)
相关推荐
大数据魔法师11 小时前
豆瓣图书数据采集与可视化分析
python·数据分析·数据可视化
栩栩云生16 小时前
📥 x-cmd install | Toolong - 终端日志分析的瑞士军刀
运维·python·数据分析
Start_Present19 小时前
Pytorch 第十五回:神经网络编码器——GAN生成对抗网络
pytorch·python·神经网络·生成对抗网络·数据分析
镜舟科技1 天前
如何高效使用 Text to SQL 提升数据分析效率?四个关键应用场景解析
数据库·sql·数据分析
Yvonne9781 天前
案例:陌陌聊天数据分析
hive·数据分析·finebi
派可数据BI可视化2 天前
数据中台、BI业务访谈(三):如何选择合适的访谈对象
大数据·信息可视化·数据挖掘·数据分析·商业智能bi
看海的四叔2 天前
【SQL】MySql常见的性能优化方式
hive·sql·mysql·性能优化·数据分析·索引优化·sql语法
大神薯条老师2 天前
Python高级爬虫之JS逆向+安卓逆向1.4节:数据运算
爬虫·python·机器学习·数据分析·网络爬虫
乙真仙人2 天前
数据分析不只是跑个SQL!
sql·数据挖掘·数据分析
大话数据分析2 天前
现在AI大模型能帮做数据分析吗?
人工智能·数据分析