【发布时间】:2020-05-30 17:31:24
【问题描述】:
我使用 Microsoft 帮助页面中的示例在 DateTime2 属性上使用 YYYYMM 创建分区(代码和链接如下)。
我将起始分区设置为从 201702(2017 年 2 月)到 202006(2020 年 6 月)。
我希望能够在上个月的月初为下个月添加(拆分?)一个新分区 - 如果它尚不存在。当日期为 2020 年 6 月 1 日时,它将为 7 月创建一个新分区。我不确定如何继续。
我已尝试查看 Azure 文档,但它仅包含标准编号的示例。
--Create date partition function with increment by month.
DECLARE @DatePartitionFunction nvarchar(max) =
N'CREATE PARTITION FUNCTION DatePartitionFunction (datetime2)
AS RANGE RIGHT FOR VALUES (';
DECLARE @i datetime2 = '20170201';
WHILE @i < '20200601'
BEGIN
SET @DatePartitionFunction += '''' + CAST(@i as nvarchar(10)) + '''' + N', ';
SET @i = DATEADD(MM, 1, @i);
END
SET @DatePartitionFunction += '''' + CAST(@i as nvarchar(10))+ '''' + N');';
EXEC sp_executesql @DatePartitionFunction;
GO
【问题讨论】:
标签: sql-server azure database-partitioning