次のように、単一の文字をエスケープできます。
select * from tableName where columnName like 'CU_C' escape '_';
複数の文字 (「%」と「_」) をエスケープする必要があります。
select * from tableName where columnName like 'C%U_C' escape ??;
複数の文字をエスケープするにはどうすればよいですか?
あなたは の意味を誤解してescape
います: 別の文字の前に置くと、その文字がメタ文字としてではなく文字どおりに解釈されるように文字を定義できます。必要なエスケープ文字は 1 つだけです。これを使用して、任意のメタ文字をエスケープできます。
以下の例では'#'
、エスケープ文字として使用しました。
select * from tableName where columnName like 'C#%U#_C' escape '#'
これは、文字列または単一文字としてではなく、とのC%U_C
両方が文字どおりに解釈される文字列との一致を試みます。'%'
'_'
エスケープ文字
単一文字 '' の例:
'high\-voltage'
文字列または複数の文字 '{ string }' の例:
'{high-voltage}'
参考:https ://docs.oracle.com/cd/B10501_01/text.920/a96518/cqspcl.htm