Какие методы могут получить JPQL для соответствия аналогичным строкам?Java: поиск в JPQL -similar-strings
Аналогичного я имею в виду:
- Содержит: искомая строка найдена в строке спичек лица
- корпусных нечувствительны
- Малых mispellings: например, «Arow» соответствует «стрелка»
Я подозреваю, что первые два будет легко, однако, я был бы признателен за помощь с последним
Спасибо
может предположить, что для 3) вы должны использовать базу данных, поддерживающую эту функцию, и запускать ее как собственный запрос. это даст вам гораздо больше, чем все, что вы можете сделать в JPQL, одновременно с переносом переносимости –
@seanizer: Какие базы данных поддерживают эту функцию? – bguiz
postgres поддерживает его: http://www.postgresql.org/docs/8.3/static/fuzzystrmatch.html, а в большинстве других он может быть реализован с использованием функций/хранимых процедур. например в Oracle: http://richmurnane.blogspot.com/2006/02/levenshtein-distance-algorithm-oracle.html mysql: http://codejanitor.com/wp/2007/02/10/levenshtein-distance-as- a-mysql-stored-function/mssql: http://www.bigresource.com/MS_SQL-Levenshtein-Edit-Distance-Algorithm-zRMNNbbv.html –