Oracle DB - 包含函数中的特殊字符

时间:2015-07-10 08:29:40

标签: java sql oracle special-characters contains

我有一个存储一些文档内容的BLOB字段。

我的Java程序想要在该字段上进行搜索,

这是我的SQL语句:

Select * from table_A where CONTAINS(BLOB_FIELD,'{Keyword}') > 0;

当用户输入' P - '和' P =' ,他们得到了一些结果。 我想解决这个问题,谢谢!!!

1 个答案:

答案 0 :(得分:0)

如果要搜索实际字符( - ,=,*,%等),CONTAINS会使用许多必须转义的字符/单词。试试P \ - '看看是否有帮助......如果没有,请参阅下文。

此外,LEXER设置确定P确定分词(句末)之后的时间段的几率非常高。这是由DBA控制的,并且有一些相当复杂的逻辑来确定如何分割/不分割单词以进行文本搜索。