我正在使用 oracle 文本在搜索栏中进行预读(根据规范作者)。
基本上,用户可以开始输入文本,我们用可能的匹配项填充建议栏。
我尝试为此使用 oracle 文本,但遇到了一些问题,最新的问题是:
表包含 answertext 的此条目: ... 我们提供许多定价选项 ...
SELECT
questiontext as qtext,
answertext as text,
questionid FROM question
WHERE contains(answertext, '{pric}', 1) > 0
;
此查询不返回任何内容。但是使用 {pricing} 将返回正确的结果。
并建议为什么会发生这种情况会很棒!
编辑:只是想补充一点,使用词干对我不起作用,因为用户想要区分“报告”和“报告”,并且他们希望突出显示匹配的子字符串,如果我可以在返回的子字符串中找到该子字符串,则可以这样做结果。
编辑 2:我有我的猜测,oracle 使用索引中某种单词边界对每个单词进行标记,因此没有任何通配符,它会查找等于 = 'pric' 的标记,因此找不到它(因为有代币“定价”)。所以,如果这个猜测是正确的,我希望有人能插话我如何使上面的查询与示例条目一起工作,同时仍然保持空白,所以如果输入“定价选项”它应该返回但如果我输入“许多选项”它不应该...