单个字符可以像这样转义:
select * from tableName where columnName like 'CU_C' escape '_';
我需要转义多个字符(“%”和“_”):
select * from tableName where columnName like 'C%U_C' escape ??;
如何转义多个字符?
您误解了 的含义escape
:它使您可以定义一个字符,以便当您将其放在另一个字符前面时,该字符将按字面意思解释,而不是元字符。您只需要一个这样的转义字符:您可以使用它来转义任何元字符。
在下面的示例中,我用作'#'
转义字符:
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