Oracle contains with Fuzzy不返回逻辑结果
我有一个疑问:Oracle contains with Fuzzy不返回逻辑结果,oracle,fuzzy-search,Oracle,Fuzzy Search,我有一个疑问: select id, name from ville where CONTAINS(NAME,'?TROOZ%') > 0; 在我的表格中: 1679年特洛伊-庞特福斯(列日) 1680特洛伊-庞茨瓦纳(列日) 2717特鲁兹(列日) 此查询将仅返回前两个结果,而不返回2717 为什么特罗兹没有被归还 我阅读了网站上的文档 我不明白为什么最后一个条目和更符合逻辑的条目没有返回,因为整个查询都是在文本中找到的 NB:包含(名称,“TROOZ%”)返回“TROOZ(列日
select id, name from ville where CONTAINS(NAME,'?TROOZ%') > 0;
在我的表格中:
- 1679年特洛伊-庞特福斯(列日)
- 1680特洛伊-庞茨瓦纳(列日)
- 2717特鲁兹(列日)
NB:包含(名称,“TROOZ%”)返回“TROOZ(列日)”< /P><P>0的回答,但如果考虑到这一点会有帮助。
select id, name from ville where CONTAINS(NAME, 'definescore(fuzzy(TROOZ, 1, 10, weight), relevance)', 1) > 0;
这里我们使用基于相关性的定义核心操作符,然后使用模糊操作符来扩展基于相似度权重的搜索结果,这里我们将扩展结果限制为10,以最低分数1为例
您是否尝试使用
包含(名称“?TROIS%”)
。从的文档中,我了解到输入应与正确的拼写相匹配,Oracle的算法将根据该拼写生成模糊变体。我尝试获取TROOZ条目,因此尝试使用TROIS无助于:(