0

ご覧のとおり、このファイル グループを作成します。

データベース AdventureWorksDW の作成

ALTER DATABASE AdventureWorksDW ADD FILEGROUP [Filegroup_2001]  
GO  
ALTER DATABASE AdventureWorksDW ADD FILEGROUP [Filegroup_2002]  
GO  
ALTER DATABASE AdventureWorksDW ADD FILEGROUP [Filegroup_2003]  
GO  
ALTER DATABASE AdventureWorksDW ADD FILEGROUP [Filegroup_2004]  
GO

これらのファイルで:

ALTER DATABASE AdventureWorksDW
  ADD FILE
  (NAME = N'data_2001',
  FILENAME = N'C:\FileGroupFile\data_2001.ndf',
  SIZE = 5000MB,
  MAXSIZE = 10000MB,
  FILEGROWTH = 500MB)
  TO FILEGROUP [Filegroup_2001]  
GO  
ALTER DATABASE AdventureWorksDW
  ADD FILE
  (NAME = N'data_2002',
  FILENAME = N'C:\FileGroupFile\data_2002.ndf',
  SIZE = 5000MB,
  MAXSIZE = 10000MB,
  FILEGROWTH = 500MB)
  TO FILEGROUP [Filegroup_2002]
GO  
ALTER DATABASE AdventureWorksDW
  ADD FILE
  (NAME = N'data_2003',    
  FILENAME = N'C:\FileGroupFile\data_2003.ndf',    
  SIZE = 5000MB,    
  MAXSIZE = 10000MB,    
  FILEGROWTH = 500MB)  
  TO FILEGROUP [Filegroup_2003]  
GO  
ALTER DATABASE AdventureWorksDW
  ADD FILE  
  (NAME = N'data_2004',
  FILENAME = N'C:\FileGroupFile\data_2004.ndf',
  SIZE = 5000MB,
  MAXSIZE = 10000MB,
  FILEGROWTH = 500MB)
  TO FILEGROUP [Filegroup_2004]
GO

これらのパーティション関数とスキーマを使用すると、次のようになります。

CREATE PARTITION FUNCTION FullOrderDateKeyRangePFN(int)  AS
  RANGE LEFT FOR VALUES 
  (  1,2,3,4  )

  CREATE PARTITION SCHEME FullOrderDateRangePScheme  AS
  PARTITION FullOrderDateKeyRangePFN  TO 
  ([Filegroup_2001],
  [Filegroup_2002],
  [Filegroup_2003],
  [Filegroup_2004],
  [PRIMARY]  )

そして最後に、テーブルを作成しました:

CREATE TABLE [DBO].[FACTINTERNETSALES_PARTITIONED] (
  [CUSTOMERPONUMBER]      [NVARCHAR](25)   NULL,
  [asl]              [int]   NULL)
  ON FullOrderDateRangePScheme  (asl)

asl=1 の 1000000 レコードをテーブルに挿入しましたが、このクエリを実行すると:

SELECT $PARTITION.FullOrderDateKeyRangePFN(4)  AS PARTITIONID,
       COUNT(*)                                   AS ROW_COUNT
FROM     DBO.FACTINTERNETSALES_PARTITIONED

すべてのパーティションに対して1000000レコードを返します。つまり、1は1000000を返し、2は1000000を返します...なぜですか?

4

0 に答える 0