按名称sql server删除分区

时间:2019-03-27 12:51:22

标签: sql-server partition

我想知道如何像MySQL一样在SQL SERVER中按名称删除分区,例如:

CREATE TABLE t1 (
        id INT,
        year_col INT
    )
    PARTITION BY RANGE (year_col) (
        PARTITION p0 VALUES LESS THAN (1991),
        PARTITION p1 VALUES LESS THAN (1995),
        PARTITION p2 VALUES LESS THAN (1999)
    );
ALTER TABLE t1 DROP PARTITION p0, p1;

每天都会创建一个新分区,并删除旧分区。因为,这是每天的分区。

我已经设置了一个分区,例如:

    CREATE PARTITION FUNCTION [pf_trans_date](datetime2(3)) AS RANGE LEFT 
FOR VALUES (N'2019-03-27T00:00:00.000', N'2019-03-28T00:00:00.000')


 CREATE PARTITION SCHEME [sh_trans_date] AS PARTITION [pf_trans_date] 
TO ([PRIMARY], [PRIMARY])

我可以添加一个新分区:

ALTER PARTITION SCHEME [sh_trans_date]
 NEXT USED [PRIMARY]
 ALTER PARTITION FUNCTION [pf_trans_date_byhour]() SPLIT RANGE('2019/03/29')

现在的问题是,如何删除旧的分区日期2019-03-27T00:00:00.000及其中的所有数据。 Coz,我在SQL Server 2017中看不到任何执行此功能的函数。

0 个答案:

没有答案