0
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億以上の行を持つ表のスキーマ更新はそれほど速くはありません。それはなぜ私はそれが直接ユーザー定義関数を使用することが可能かどうか尋ねている。