Я думаю, что logi c, который вы пытаетесь сформулировать здесь, заключается в том, что name_matched
должна быть подстрокой name
, чтобы найти совпадение:
SELECT *
FROM tbl
WHERE name ILIKE '%' || name_matched || '%';
Если приведенное выше может давать несколько ложных срабатываний (или отрицательных), тогда мы могли бы рассмотреть возможность использования здесь регулярного выражения, но, возможно, вам не нужно этого делать.