Няколко различни начина да направите това:
По-бързият (по отношение на производителността) е:select * FROM Table where keyword LIKE '%value%'
Номерът в този е поставянето на %, който е заместващ знак, който казва или да търси всичко, което завършва или започва с тази стойност.
По-гъвкава, но (малко) по-бавна може да бъде функцията REGEXP:
Select * FROM Table WHERE keyword REGEXP 'value'
Това използва силата на регулярните изрази, така че можете да получите толкова сложни, колкото искате с него. Въпреки това, оставянето както по-горе ви дава нещо като „Гугъл на бедния човек“, което позволява търсенето да бъде части от общи полета.
Залепващата част идва, ако се опитвате да търсите имена. Например, всеки ще намери името "smith", ако сте търсили SMI. Въпреки това, нито един от тях няма да намери „Джон Смит“, ако има разделени поле за име и фамилия. Така че ще трябва да направите някаква конкатенация за търсенето, за да намерите Джон ИЛИ Смит ИЛИ Джон Смит ИЛИ Смит, Джон. От там наистина може да има снежна топка.
Разбира се, ако правите някакво разширено търсене, ще трябва да обусловите съответно заявката си. Така че, например, ако искате да търсите първи, последен, адрес, тогава вашата заявка ще трябва да тества за всеки:
SELECT * FROM table WHERE first LIKE '%value%' OR last LIKE '%value%' OR address LIKE '%value'