繁体   English   中英

SQL SERVER SSAS:如何处理我的事实表中的NULL日期值,这样我可以处理我的时间维度而不会出错?

[英]SQL SERVER SSAS: How do I handle a NULL date value in my fact table, so I can process my time dimension without errors?

我有一个事实表,其中包含一个从MS Access源加载日期的列。 问题是,某些值为NULL,SSAS不允许我将DATE维度引用给它。

在SSIS阶段解决它还是更好吗?还是SSAS有一些解决方案?

非常感谢你的帮助。

最佳做法是不在Fact表中包含任何NULL键(即Dimension键)值。

而是在Date维表中创建一个MAX日期(或者'UnknownValue',例如-1)并键入该日期。

有时,出于非技术原因,不希望在DSV或源系统中修复空值。 在这种情况下,您可以使用未知成员和空处理属性来解决此问题:

http://technet.microsoft.com/en-us/library/ms170707.aspx

在尝试突出数据质量问题或快速原型设计时,我已经这样做了。

层次结构的每个成员都具有属性“HideMemberIf”。 将其设置为“NoName”,应该隐藏Dimension Browser中的空值并允许处理多维数据集。

您还可以在Datamart视图中创建命名计算。 命名计算将使用ISNULL函数,该函数可以填充值代替空值。 然后当然从这些命名计算而不是原始数据字段构建时间维度。

同样,最好不要在数据中使用任何空值,但通常可以在多维数据集中修复此值。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM