【发布时间】:2016-06-10 14:40:20
【问题描述】:
我在客户表上设置了全文索引,以便能够通过客户信息快速搜索客户。
我必须创建一个自定义休眠方言来简化映射。 并做一些时髦的事情让冬眠开始工作 Hibernate + MSSQL + Fulltext Search via Contains
我的自定义方言有一个看起来像这样的功能
registerFunction("contains", new SQLFunctionTemplate(StandardBasicTypes.BOOLEAN, "CONTAINS(?1, ?2) AND 1"));
这样就可以进行如下查询
from Customer c where contains(c.name, :term) = true
我现在的问题是,为了能够返回部分匹配项,我需要引用该术语并添加 *
所以原始查询将是
select * from customer c where CONTAINS(c.name, '"mycust*"');
我尝试用引号和星号包装 SQLFunctionTemplate,并尝试在调用站点引用,但都不起作用。
关于如何创建执行上述原始查询的 sql 函数有什么建议吗?
【问题讨论】:
标签: sql-server hibernate full-text-search