选择包含'%'列的语句

sri*_*raj 1 sql oracle

我想从一个表中选择名称,其中'name'列在值的任何位置包含'%'.例如,我想检索名称'批准零件的20%折扣'.

SELECT NAME FROM TABLE WHERE NAME ... ?
Run Code Online (Sandbox Code Playgroud)

Gor*_*off 5

您可以使用likeescape.默认值是某些数据库中的反斜杠(但不在Oracle中),因此:

select name
from table
where name like '%\%%' ESCAPE '\'
Run Code Online (Sandbox Code Playgroud)

这是标准的,适用于大多数数据库.Oracle文档在这里.

当然,你也可以使用instr():

where instr(name, '%') > 0
Run Code Online (Sandbox Code Playgroud)