SQL 解説書

LIKE 述部

>>-match-expression----+-----+--LIKE--pattern-expression-------->
                       '-NOT-'
 
>-----+----------------------------+---------------------------><
      '-ESCAPE--escape-expression--'
 

LIKE 述部は、ある一定のパターンを含むストリングを探索するものです。 パターンは、特殊な意味のある下線とパーセント記号を使ったストリングによって指定されます。 パターンでは後続ブランクもパターンの一部です。

引き数の中に値がヌル値の引き数のものがある場合、 LIKE 述部の結果は不定になります。

match-expression (一致式)、 pattern-expression (パターン式)、 および escape-expression (エスケープ式) の値は、 互換性のある文字ストリング式です。 サポートされる文字ストリング式のタイプは、 各引き数ごとに少しずつ違います。 式の有効なタイプは、各引き数の説明の中に示します。

どの式も特殊タイプを生成するものであってはなりません。 ただし、特殊タイプをそのソース・タイプへキャストする関数は可能です。

match-expression
特定の文字パターンに適合するかどうか調べる対象のストリングを指定する式。

この式は、以下のいずれかを使って指定できます。

pattern-expression
一致すべき基準となるストリングを指定する式。

この式は、以下のいずれかを使って指定できます。

以下の制約があります。

LIKE パターンについて簡単に説明するとすれば、 これは match-expression の値のための適合基準を指定するために使用されるパターンです。 これには以下の規則があります。

pattern-expression に下線またはパーセント文字を含める必要がある場合は、 escape-expression によって、 パターンの中で下線またはパーセント文字に先行させる文字を指定します。

LIKE パターンについて厳密に説明するとすれば、 以下のようにします。 この説明では、escape-expression の使用は無視されています。 それについては後で説明します。

escape-expression が指定されている場合、 直後にエスケープ文字、下線文字、またはパーセント記号文字が続くのでない限り、 pattern-expression の中に、 escape-expression で指定されるエスケープ文字が含まれていてはなりません (SQLSTATE 22025)。

match-expression が MBCS データベースの文字ストリングの場合、 それには混合データを含めることができます。 この場合は、 パターンに SBCS 文字と MBCS 文字の両方を含めることができます。 パターンの中の特殊文字は、以下のようにして解釈されます。

escape-expression
これはオプションの引き数であり、 pattern-expression の中の下線 (_) 文字とパーセント (%) 文字の特別な意味を変更するための文字を指定する式です。 これにより、 実際にパーセントや下線文字を含む値との一致を調べるために LIKE 述部を使うことができます。

この式は、以下のいずれかを使って指定できます。

以下の制約があります。

パターン・ストリングにエスケープ文字が含まれている場合、 下線、パーセント記号、またはエスケープ文字は、 それ自体のリテラル・オカレンスを表すことができます。 これは、その文字が奇数個の連続したエスケープ文字に先行されている場合です。 そうでない場合は当てはまりません。

パターンの中で、連続するエスケープ文字の並びは以下のように扱われます。

以下は、エスケープ文字 (この場合は、 円記号 (\)) の連続したオカレンスの影響を示しています。

パターン・ストリング
実際のパターン

\%
パーセント記号

\\%
1 つの円記号の後にゼロ個以上の任意の文字が続く

\\\%
1 つの円記号の後に 1 つのパーセント記号が続く

比較で使用されるコード・ページは、 match-expression の値のコード・ページに基づいて決定されます。


[ ページのトップ | 前ページ | 次ページ | 目次 | 索引 ]