LIKE 述語のエスケープ文字

LIKE 述語では、パーセント記号 (%) は任意の文字の 0 個以上に一致し、アンダースコア (_) は任意の 1 文字に一致します。 LIKE 述語の実際のパーセント記号またはアンダースコアと一致させるには、パーセント記号またはアンダースコアの前にエスケープ文字を指定する必要があります。 LIKE 述語エスケープ文字を定義するエスケープ シーケンスは次のとおりです。

{escape 'escape-character'}

エスケープ 文字 は、データ ソースでサポートされている任意の文字です。

LIKE エスケープ シーケンスの詳細については、「付録 C: SQL 文法」の「LIKE エスケープ シーケンス」を参照してください。

たとえば、次の SQL ステートメントでは、"%AAA" という文字で始まる顧客名の同じ結果セットが作成されます。 最初のステートメントでは、エスケープ シーケンス構文を使用します。 2 番目のステートメントは Microsoft Access のネイティブ構文を使用し、相互運用できません。 各 LIKE 述語の 2 番目のパーセント文字は、任意の文字の 0 個以上に一致するワイルドカード文字であることに注意してください。

SELECT Name FROM Customers WHERE Name LIKE '\%AAA%' {escape '\'}  
  
SELECT Name FROM Customers WHERE Name LIKE '[%]AAA%'  

LIKE 述語エスケープ文字がデータ ソースでサポートされているかどうかを判断するために、アプリケーションは、SQL_LIKE_ESCAPE_CLAUSE オプションを使用して SQLGetInfo を呼び出します。