Удалить раздел по имени sql server - PullRequest
2 голосов
/ 27 марта 2019

Я хотел бы знать, как удалить раздел по имени в SQL SERVER, как это делает MySQL, например:

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 и все данные в нем.Потому что я не вижу функции, которая делает это в SQL Server 2017.

...