我想使用 hql 或条件创建一个休眠查询来获取一个单词的所有排列,对于elepahant
我想要获取的单词:
- 大象
- 大象
- 象形文字
- 大象
起初我认为"%" + "elepahant" + "%"
可以完成这项工作,但实际上它只返回任何以任何字母开头并以任何字母结尾并包含elephant
中间的单词,但我想像上面的例子一样得到所有单词 reseambles,所以什么是可能的方法?
我想使用 hql 或条件创建一个休眠查询来获取一个单词的所有排列,对于elepahant
我想要获取的单词:
起初我认为"%" + "elepahant" + "%"
可以完成这项工作,但实际上它只返回任何以任何字母开头并以任何字母结尾并包含elephant
中间的单词,但我想像上面的例子一样得到所有单词 reseambles,所以什么是可能的方法?
一个非常简单的解决方案是使用按字母顺序排序的单词的非规范化字段,如下所示:
word sorted_word
apple aelpp
kitty iktty
只需将排序后的单词与该列进行比较。
看看 Hibernate Search、Lucene、Spell Checker。我不认为你可以用简单的 SQL 来做这样的事情。
http://docs.jboss.org/hibernate/search/4.3/reference/en-US/html/