以下查询将返回like
匹配的第一个项目(真正的任何旧项目)。
TypeQuery<Company> query = em.createQuery(
"select c from Company c where c.name like ?1", Company.class);
query.setMaxResults(1);
query.setParameter(1, "%" + name + "%");
result = query.getSingleResult();
但我希望最佳匹配显示为我的单个结果
这里最好的意思是匹配与给定name
的差异最小
我可以将哪种order by
应用于此查询以实现此目的?
答案 0 :(得分:1)
如果你需要这样的搜索,你可以将lucene和hibernate一起使用吗?
请参阅文档http://docs.jboss.org/hibernate/search/3.3/reference/en-US/html_single/#search-query-lucene-api
我认为这就是你需要的。
同时查看https://groups.google.com/forum/?fromgroups=#!topic/ravendb/-L0LMAScJnA