You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

SQL Server 2012:如何编写MDX查询返回员工计数>1的结果?

解决SQL Server 2012 MDX过滤员工计数大于1的问题

嘿,刚好帮你搞定这个需求!你现在的查询是把所有员工ID都列出来了,要只保留员工计数大于1的记录,用Filter函数在行轴上做筛选就可以了,直接修改你的查询就行:

SELECT 
  NON EMPTY {[Measures].[Employee Count]} ON COLUMNS,
  -- 用Filter遍历每个员工ID,只保留计数>1的成员
  Filter(
    [Employee].[Employee ID].[Employee ID].Members,
    [Measures].[Employee Count] > 1
  ) ON ROWS
FROM [Human Capital]

简单解释下逻辑:

  • Filter函数会逐个检查[Employee].[Employee ID]层级下的每个成员,计算它对应的[Employee Count]度量值
  • 只有当度量值大于1时,这个员工ID才会被保留在行轴上展示
  • 因为你用了NON EMPTY,空值的情况已经被排除,所以不用额外处理计数为0或者NULL的情况

这个写法完全兼容SQL Server 2012的MDX语法,放心用就好~

内容的提问来源于stack exchange,提问作者Shaji

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.22 08:46:10