SQL server Schaltet mehr als eine Partition ein

Ich habe 100 parititons in einer Tabelle, die ich auf ihre entsprechende Bühnen-Tabelle (auf dem gleichen FG und mit ausgerichteten Indizes) wechseln muss. Im Moment bin ich mit der Abfrage unten

Tabelle ändern MS_PROD Switch Partition 5 TO MS_Stage PARTITION 5

Ich bin damit fertig, dies für alle 100 Partitionen zu tun, gibt es einen schnellen path, um alle Partituren parallel zu wechseln.

Nicht dass ich wüsste. Was ich normalerweise tun würde, platziere den Schalter in die loop. Etwas wie das:

DECLARE @Partitions TABLE (PartitionId int PRIMARY KEY CLUSTERED); DECLARE @PartitionId INT; INSERT @Partitions(PartitionId) SELECT prv.boundary_id PartitionId FROM sys.partition_functions AS pf INNER JOIN sys.partition_range_values prv ON prv.function_id=pf.function_id WHERE (pf.name=N'PartitionFunctionName'); WHILE EXISTS (SELECT NULL FROM @Partitions) BEGIN SELECT TOP 1 @PartitionId = PartitionId FROM @Partitions; ALTER TABLE MS_PROD SWITCH PARTITION @PartitionId TO MS_Stage PARTITION @PartitionId; RAISERROR('Switched PartitionId %d to Stage',0,1,@PartitionId) WITH NOWAIT; DELETE @Partitions WHERE PartitionId = @PartitionId; END