1

次の関数を使用して、SQL Server に 4 つのパーティションを作成しました。

CREATE PARTITION FUNCTION fnYearsRT(DateTime)
AS RANGE RIGHT FOR VALUES
('01/01/2005', '01/01/2006', '01/01/2007', '01/01/2008');

CREATE PARTITION SCHEME date_partscheme
 AS PARTITION fnYearsRT
 TO (Filegroup1, Filegroup2, Filegroup3, Filegroup4,Filegroup5)

CREATE TABLE Sales.ReturnsArchive
  (
     ReturnID  int  IDENTITY NOT NULL, 
     ProductID  int  NOT NULL, 
     CustomerID  int  NOT NULL, 
     ReturnDate  datetime  NOT NULL,  
     ReturnReason  char(20)  NULL  
  ) 
 ON date_partscheme (ReturnDate)

データを挿入した後、次の統計があります

Partition   COUNT
2       5151
3       19353
4       51237
5       45576

パーティション 2 と 3 をマージしたいのですが、マージ機能で指定する範囲を決定できません。

4

1 に答える 1

2

実際には4つではなく5つのパーティションがあり、最初のパーティションは空のように見えます。パーティション2と3をマージするには、次のコードを使用します。

ALTER PARTITION FUNCTION 
    MERGE RANGE('01/01/2006')

これにより、次の範囲が得られます。

  1. 〜「2004年12月31日」まで
  2. 「2005年1月1日」から「2006年12月31日」
  3. 「2007年1月1日」から「2007年12月31日」
  4. '01/01/2008'から〜
于 2012-10-20T07:54:46.907 に答える