【发布时间】:2025-11-28 07:35:01
【问题描述】:
请多多包涵,因为我是 SSAS/MDX 的新手。我想要对事实表的 ID 列进行 DISTINCTCOUNT 度量,但在过滤 -1 即未知 ID 之后。我也喜欢在上面切/切块。 这是我的桌子
DimStudent
----------------------------
ID Name
-1 Unknown
1 Joe
2 Tim
3 Paul
4 Zina
DimCourse
----------------------------
ID Name
-1 Not Registered
11 Maths
22 Science
33 Arts
FactStudent
---------------
DimStudentID DimCourseID YearID Marks
-----------------------------------------------------------------
1 11 2009 89
1 33 2009 10
1 33 2010 90
1 -1 2009 0
2 -1 2009 0
3 22 2009 90
4 -1 2009 0
在上面的示例中,StudentID 1 有一门课程 ID 为 -1,并且他重复了一门课程。如果我为每个学生进行课程不同计数,它会给我 3 个学生 ID 1,而对于学生 2 和 4,它会给我 1 个。 我的预期结果(不考虑年份)是:
学生姓名课程数
乔 2(而不是 3) Tim 0(而不是 1) 保罗 1 吉娜 0(而不是 1)
如果只做不同的计数,它应该给我 3 而不是 4。
再次感谢您的帮助,非常感谢。
问候
【问题讨论】:
-
您想要 SQL 还是 SSAS 解决方案?
-
谢谢马克 - 我需要 MDX 解决方案。
-
我已经稍微修改了我的问题 - 请再读一遍
标签: sql filter count aggregate sum