9

单个字符可以像这样转义:

select * from tableName where columnName like 'CU_C' escape '_';

我需要转义多个字符(“%”和“_”):

select * from tableName where columnName like 'C%U_C' escape ??;

如何转义多个字符?

4

2 回答 2

20

您误解了 的含义escape:它使您可以定义一个字符,以便当您将其放在另一个字符前面时,该字符将按字面意思解释,而不是元字符。您只需要一个这样的转义字符:您可以使用它来转义任何元字符。

在下面的示例中,我用作'#'转义字符:

select * from tableName where columnName like 'C#%U#_C' escape '#'

这会尝试匹配C%U_C字符串,其中'%''_'都按字面意思解释,而不是任何字符的序列或任何单个字符。

于 2013-08-07T02:05:32.537 回答
0

转义字符

单个字符 '' 的示例:

'high\-voltage'

字符串或多个字符 '{ string }' 的示例:

'{high-voltage}'
  • ' - ' 是非 alnum 字符

参考:https ://docs.oracle.com/cd/B10501_01/text.920/a96518/cqspcl.htm

于 2021-04-29T14:30:49.190 回答