文字列値の条件でワイルドカード文字を使用する
次の演算子を持つ文字列値の条件を使用してクエリを作成する場合は、ワイルドカード文字を使用できます。
like
not-like
begins-with
not-begin-with
ends-with
not-end-with
詳細情報: FetchXML を使用してデータをクエリする
これらの条件演算子を使用する場合、検索条件でワイルドカードを表すために特定の文字を使用できます。 次の表では、使用できる文字を説明しています。
登場人物 | Description | T-SQL のドキュメントと例 |
---|---|---|
% |
0 文字以上の任意の文字列に一致します。 このワイルドカード文字は、接頭辞または接尾辞として使用できます。 | パーセント記号 (ワイルドカード - 一致する文字) (Transact-SQL) |
_ |
パターン マッチングを含む文字列比較操作で任意の 1 文字を照合します。 | _ (ワイルドカード - 1 つの文字に一致) (Transact-SQL) |
[] |
角かっこで囲まれた指定範囲またはセット内にはない任意の 1 文字に一致します。 | [ ] (ワイルドカード - 一致する文字) (Transact-SQL) |
[^] |
角かっこで囲まれた指定範囲またはセット内にはない任意の 1 文字に一致します。 | [^] (ワイルドカード - 一致しない文字) (Transact-SQL) |
ワイルドカード文字を含む文字列を検索する
ワイルドカード パターン マッチング文字をリテラル文字として使用できます。 ワイルドカード文字をリテラル文字として使用するには、ワイルドカード文字をかっこで囲みます。 詳細: リテラルとしてのワイルドカード文字の使用。
先頭にワイルドカードを使用しない
暗黙的な先頭のワイルドカード (ends-with
など)、または明示的な先頭のワイルドカードで条件演算子を使用するクエリは、パフォーマンスが低下し、特定のシナリオでは組織全体のパフォーマンスが低下する可能性があります。 詳細情報:
これらのアンチ パターンを使用するクエリでは、クエリを最適化できないため、パフォーマンスの問題が発生します。
like
、begins-with
、not-begin-with
、ends-with
、または not-end-with
を使用する式で末尾のワイルドカードを使用しないでください。 次に、末尾のワイルドカードの例をいくつか示します。
悪い例 |
---|
<condition attribute='name' operator='like' value='%value' /> |
<condition attribute='name' operator='begins-with' value='%value' /> |
<condition attribute='name' operator='not-begins-with' value='%value' /> |
<condition attribute='name' operator='ends-with' value='value' /> |
<condition attribute='name' operator='not-ends-with' value='value' /> |
参照
FetchXML を使用して行をフィルターする
QueryExpression を使用して行をフィルターする
Web APIを使用してデータをクエリする
注意
ドキュメントの言語設定についてお聞かせください。 簡単な調査を行います。 (この調査は英語です)
この調査には約 7 分かかります。 個人データは収集されません (プライバシー ステートメント)。