这个问题是关于Kimball维度风格的双时间戳表,但不一定遵循完整的星型模式/雪花方案。只需考虑简单的START_DATE_TIME和END_DATE_TIME来描述某段记录的有效性。
如果您从只有“开始时间戳”的表开始,是否可以生成两个时间戳物化视图,并有效(逐步)刷新?
出于讨论目的,假设将使用最新版本的Microsoft SQL Server。
答案 0 :(得分:1)
对于SQL Server索引视图,这是不可能的(索引是SQL Server中的物化视图机制)
它们可能包含的构造有very many limitations,并且自我连接,子查询和OVER子句/排名/聚合窗口函数都列在这些中。
最后一个限制规定使用Lag
和Lead
等来获取下一个时间戳,如果没有窗口函数,您仍然会遇到上面列出的其他限制之一,试图执行此操作。