поиск любого слова с использованием LIKE%

У меня есть таблица базы данных, которая имеет имя поля и имя поля. Я пытаюсь внедрить поисковую систему любого слова, используя окно поиска, где, если скажем, что у нас есть пользователь по имени John Stanley Smith в базе данных (где firstname = John Stanley и lastname = Smith ), я хочу иметь возможность верните John Stanley Smith если пользователь набирает одно из следующих значений:

1- Любая буква, входящая в состав John Stanley Smith (j, s, l, e, y, m и т. Д.)
2- Любое слово, которое является частью John Stanley Smith
3. Любая комбинация слов (в любом порядке), которая является частью John Stanley Smith , что означает, что, если пользователь входит в John Stanley или John Smith или Stanley Smith или Stanley John (вы получаете идею) и т. Д. … Я хочу чтобы найти John Stanley Smith .

Я знаю, что могу сделать это, используя функцию полнотекстового поиска MySQL, но если я это сделаю, точка номер один не будет работать (поскольку функция полнотекстового поиска MySQL соответствует только целым словам, а не подстрокам внутри строки). Кроме того, для выполнения поиска требуется минимальное количество слов (заданное константой min_word_len ). Итак, я действительно хочу сделать это, используя LIKE%.

спасибо