SQL Server 2008 R2 を使用しています。私はいくつかのパーティショニングを試していますが、いくつか質問があります。
非常に簡単な例を次に示します。
CREATE PARTITION FUNCTION MyPartitionFunction (int)
AS RANGE LEFT FOR VALUES (1,2)
CREATE PARTITION SCHEME MyPartitionScheme AS
PARTITION MyPartitionFunction ALL TO ([PRIMARY])
CREATE FUNCTION CalcPartitionValue (@value int) RETURNS int
WITH SCHEMABINDING AS
BEGIN
if @value % 2 = 0 return 1
return 2
END
CREATE TABLE MyTable
(ID INT NOT NULL)
ON MyPartitionScheme (dbo.CalcPartitionValue(ID));
ユーザー定義関数をパーティショニング関数の入力として使用したい。これを機能させる方法はありますか?
ユーザー定義関数を使用して計算列を作成できることを知っています。ただし、3 億行を超えるテーブルのスキーマ更新はそれほど高速ではありません。そのため、ユーザー定義関数を直接使用できるかどうかを尋ねています。