如何匹配hibernate HQL查询中的完整单词?例如,想象一下在我们的数据库中我们有一个条目"Sam Adams".现在,给定这个HQL片段:
book.character like 'Sam'
我不喜欢"Sam Adams".
但是,如果我将查询更改为:
book.character = 'Sam%'
然后我也匹配"萨曼莎".但是,我不希望这与"Sam"这个词的变体相匹配; 我只想匹配完整的单词"Sam".
(并且,通过扩展,查询'Sam Adams'也可以匹配,因为这是两个完整的单词.)
由于HQL直接映射到SQL LIKE功能,而LIKE功能不支持正则表达式,因此您必须具有创造性并执行以下操作:
book.character喜欢'Sam%'或book.character喜欢'%Sam'或book.character喜欢'%Sam%'或book.character ='Sam'
这可能不是确切的语法,但你明白了.如果你没有意识到,这个坏男孩的表现不会令人印象深刻.