Мы часто хотим искать текст независимо от количества пробелов, пробелов и букв.
Просто обрежьте, нижний регистр и замените все несколько несловесных символов на один пробел.
SELECT regexp_replace(trim(lower('Here is a long text , with many white spaces AND different character sensitive')),'\W+',' ','g') t
return: вот длинный текст с множеством пробелов и различными символами
Вот использование для поиска. Важен только порядок слов, ничего более. И это прекрасно.
select * from (
SELECT regexp_replace(trim(lower('Here is a long text , with many white spaces AND different character sensitive')),'\W+',' ','g') t
) as o
where t= regexp_replace(trim(lower('Here is a LonG TEXT , with mANY white ^ spaces AND different character sensiTive')),'\W+',' ','g')
return: вот длинный текст с множеством пробелов и различными символами
Мусор в данных и мусор в запросе, но он все равно находит это правильно.