如何在SQL Server OLAP多维数据集中按时间维度筛选统计案例数
SQL Server 2016多维OLAP Cube跨时间段案例统计配置问题
基础环境
- 基于SQL Server 2016多维模式OLAP Cube开发,使用Visual Studio的Multidimensional Project模板
- 关联数据库核心表:
- Cases表:包含
StartDate(案例开始日期)、EndDate(案例结束日期)字段 - Person表:包含
FirstName、LastName、BirthDate字段
- Cases表:包含
- 已完成项目初始化、维度定义及Cube基础搭建,仅需针对跨时间段统计场景调整配置
需求目标
- 为Cube配置Year、Quarter、Month、Week、Date时间属性,支持在行/列维度中使用
- 统计规则:计算所有
StartDate至EndDate覆盖目标时间段的案例数(例如2020年需统计所有在该年度内有发生的案例,包括跨年度、全年持续的案例) - 需建立
Year->Quarter->Month的时间层级,适配上述统计逻辑
当前问题
已尝试配置一周,但所有日期对应的案例数始终一致,未达到预期统计效果
参考MDX脚本(需适配自身维度)
AGGREGATE( {NULL:LINKMEMBER([Date].[Calendar].CURRENTMEMBER ,[Start Date].[Calendar])} * {LINKMEMBER([Date].[Calendar].CURRENTMEMBER , [End Date].[Calendar]):NULL} , [Measures].[Project Count])
补充信息
已按照相关建议创建好维度关系,附上Dimension Usage标签页截图
内容的提问来源于stack exchange,提问作者Steven2105
相关产品推荐
相关产品推荐

