次の方法で共有


sp_check_join_filter (Transact-SQL)

適用対象: SQL Server Azure SQL Managed Instance

2 つのテーブル間の結合フィルターを検証して、結合フィルター句が有効かどうかを判断します。 このストアド プロシージャは、指定したテーブルの事前計算されたパーティションで、指定した結合フィルターを使用できるかどうかなど、指定した結合フィルターに関する情報を返します。 このストアド プロシージャは、パブリケーション上のパブリッシャー側で実行されます。 詳細については、「 パラメーター化されたフィルター - 事前計算済みパーティションの最適化を参照してください。

Transact-SQL 構文表記規則

構文

sp_check_join_filter
    [ @filtered_table = ] N'filtered_table'
    , [ @join_table = ] N'join_table'
    , [ @join_filterclause = ] N'join_filterclause'
[ ; ]

引数

[ @filtered_table = ] N'filtered_table'

フィルター処理されたテーブルの名前。 @filtered_tablenvarchar(400) で、既定値はありません。

[ @join_table = ] N'join_table'

@filtered_tableに結合されるテーブルの名前。 @join_tablenvarchar(400)で、既定値はありません。

[ @join_filterclause = ] N'join_filterclause'

テスト対象の結合フィルター句。 @join_filterclausenvarchar(1000)で、既定値はありません。

結果セット

列名 データ型 説明
can_use_partition_groups bit パブリケーションが事前計算済みパーティションの資格を持つかどうかを指定します。ここで 1 は、事前計算済みのパーティションを使用できることを意味し、 0 は使用できないことを意味します。
has_dynamic_filters bit 指定されたフィルター句に少なくとも 1 つのパラメーター化されたフィルター関数が含まれている場合です。ここで 1 は、パラメーター化されたフィルター関数が使用されることを意味し、 0 はそのような関数が使用されていないことを意味します。
dynamic_filters_function_list nvarchar(500) アーティクルのパラメーター化されたフィルターを定義する filter 句内の関数の一覧。各関数はセミコロンで区切られます。
uses_host_name bit HOST_NAME関数がフィルター句で使用されている場合、1はこの関数が存在することを意味します。
uses_suser_sname bit SUSER_SNAME関数がフィルター句で使用されている場合、1はこの関数が存在することを意味します。

リターン コードの値

0 (成功) または 1 (失敗)。

解説

sp_check_join_filter はマージ レプリケーションで使用されます。

sp_check_join_filter は、パブリッシュされていない場合でも、関連するテーブルに対して実行できます。 このストアド プロシージャは、2 つのアーティクル間の結合フィルターを定義する前に、結合フィルター句を検証するときに使用できます。

アクセス許可

sysadmin固定サーバー ロールまたは固定データベース ロールdb_ownerのメンバーのみがsp_check_join_filterを実行できます。