1
使用SQL Server 2016系统版本的时态表进行慢速变化维度的查询策略
当使用系统版本的时态表(SQL Server 2016中的新增功能)时,当此功能用于处理大型关系数据仓库中的维缓慢变化时,查询创作和性能含义是什么? 例如,假设我有一个Customer带有Postal Code列的100,000行维,一个Sales带有CustomerID外键列的数十亿行事实表。并假设我要查询“按客户的邮政编码进行的2014年销售总额”。简化的DDL就是这样(为了清楚起见,省略了许多列): CREATE TABLE Customer ( CustomerID int identity (1,1) NOT NULL PRIMARY KEY CLUSTERED, PostalCode varchar(50) NOT NULL, SysStartTime datetime2 GENERATED ALWAYS AS ROW START NOT NULL, SysEndTime datetime2 GENERATED ALWAYS AS ROW END NOT NULL, PERIOD FOR SYSTEM_TIME (SysStartTime, SysEndTime) ) WITH (SYSTEM_VERSIONING = ON); …