Нечеткое соответствие в базе данных H2? - PullRequest
1 голос
/ 24 февраля 2012

Мне просто интересно, существует ли простой способ реализации нечеткого сопоставления строк с использованием базы данных H2.У меня есть в базе данных список имен, и я хочу иметь возможность искать их, используя 3 символа, которые могут быть найдены в любом месте имени в порядке ввода 3 символов.

Я неконечно, если это вообще возможно, но это сделало бы жизнь намного проще, если бы это можно было сделать в базе данных с помощью SQL, а не Java

1 Ответ

2 голосов
/ 24 февраля 2012

Вы можете использовать

select * from test where name like '%xyz%'

См. Также документацию LIKE .

Другой вариант - использовать SOUNDEX :

select * from test where soundex(name) = soundex('word')

В обоих случаях индекс не может быть использован. Это означает, что запрос медленный, если в таблице много строк, так как каждая строка должна быть проверена.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...