Я хотел бы знать, как удалить раздел по имени в 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.