Если вы не хотите использовать LIKE
и не называете причину (это хорошо для всех остальных), то вот решение, которое поможет вам обойти это. (Но это может быть не самый лучший вариант в реальном мире ...)
Когда в базу данных добавляется что-либо, что вы хотите найти, возьмите каждое слово и разбейте его на каждую возможную комбинацию из 1 или более последовательных букв.
например. для стека:
s, t, a, c, k, st, ta, ac, ck, sta, tac, ack, stac, tack, stack
Вставьте каждый из них в таблицу с идентификатором, который ссылается на исходные данные.
Тогда вы можете точно сопоставить любой поисковый запрос с этим списком слов (для полного и частичного совпадения). Если ваш пользователь выполняет поиск по нескольким ключевым словам, вы разделяете их по фронту и выполняете поиск по каждому из них, ища совпадения с одним и тем же идентификатором.