从Oracle中的列中选择A%B

时间:2015-02-25 09:46:19

标签: oracle oracle10g

我的oracle数据库中有一个表。它有一个列.Column中有A%B和A / B值。我只想选择值A%B.我写了一个像

这样的解决方案
SELECT name FROM Testcase WHERE 'A%B' like name; 

它起作用但是达不到标记。

1 个答案:

答案 0 :(得分:1)

假设你的表是:

 create table ab (name varchar2(3));

 insert into ab values ('A%B');
 insert into ab values ('A/B');

为了编写仅返回'A%B'的查询,您需要将转义字符设置为转义%,它用作LIKE语句中一个或多个字符的通配符。

 select name from ab where name like 'A/%B' escape '/';

此查询仅返回“A%B”

请注意,在您的示例中,LIKE语句与=完全相同。你需要添加通配符才能使LIKE在匹配部分字符串时有用,比如

 select name from ab where name like 'A/%B%' escape '/';