内部の観点からは、方法は基本的に同じです。
舞台裏では、日付ベースのパーティションを作成すると、SQLエンジンはパーティションごとに個別の物理テーブルを作成し、基本的にUNION
を実行します。 テーブル自体にクエリを実行するとき。
パーティションフィールド(DateField
)に対応するパーティションテーブルのクエリでフィルターを使用する場合 たとえば)、エンジンはデータに必要なパーティションに直接移動できます。そうでない場合は、必要に応じて論理テーブル内の各物理テーブルを検索して、クエリを完了します。
クエリに日付フィルターが含まれる場合(質問からのように聞こえます)、「カスタム」メソッドに利点はないと思います。
基本的に、選択する必要があるのは、パーティショニングに関連するすべてのロジックとコーナーケースに責任を持ちたいですか、それとも何十年もこれを行ってきたMicrosoftの開発者に信頼してもらいたいですか?強い>
私自身の目的のために、やりたいことのための組み込みのフレームワークがある場合、私は常にそれを使用しようとします。 「手巻きたばこ」ソリューションよりも常に高速で、安定性が高く、エラーが発生しにくいです。