使用Hibernate Search,我无法搜索确切的句子。
例如,在我的索引中使用以下句子:
1 - New York weather
2 - New York
我想只获得与“纽约”相匹配的第2行,因此我进行了以下查询:
qb.phrase().onField("label").sentence("New York").createQuery()
但是这个查询返回“纽约”和“纽约天气”,即当我想像平等一样使用它时,我的句子被用作前缀。
如何使用hibernate搜索执行此操作?
答案 0 :(得分:1)
在5.1.2.4中,它提到了“斜率因子”
https://docs.jboss.org/hibernate/search/4.1/reference/en-US/html_single/#search-query-querydsl
尝试slop因子为零?
qb.phrase()。withSlop(0).onField(“label”)。sentence(“New York”)。createQuery()
也尝试使用此问题中提到的Lucene API。
Finding exact match using Lucene search API
您的用例是直接的,可能不保证Hibernate Search查询DSL