I would like to know how to drop partition by name in SQL SERVER like MySQL do it, example :
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;
A new partition is created everyday and dropped old ones. Because, it's a daily partition.
I've setup a partition like:
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])
and i can add a new partition :
ALTER PARTITION SCHEME [sh_trans_date]
NEXT USED [PRIMARY]
ALTER PARTITION FUNCTION [pf_trans_date_byhour]() SPLIT RANGE('2019/03/29')
Now the problem is how can i drop the old partition date 2019-03-27T00:00:00.000
and the all the data in it. Coz, i don't see any function that does it in SQL Server 2017.