Как избежать символов подстановки в предложении «как»? - PullRequest
8 голосов
/ 09 июня 2010

Как я могу избежать символов подстановки в предложении like?

Например:

select foo from Foo as foo where foo.bar like '%' || :filter ||'%'
query.setParameter("filter", "%");
query.list(); 
// I'd expect to get the foo's containing the '%' in bar, not all of them!

Есть идеи?

1 Ответ

12 голосов
/ 09 июня 2010

В Hibernate 3 вы можете использовать параметр escape для указания escape-символа:

select foo from Foo as foo where foo.bar like '!%' escape '!'

Я думаю, что это должно работать, хотя я никогда не пробовал на практике.

...