Как phpmyadmin реализует функцию поиска? - PullRequest
4 голосов
/ 20 октября 2011

В phpMyAdmin есть функция search in database, с помощью которой я могу ввести слово и найти его в любой таблице (таблицах).

Как реализовать это с помощью оператора SQL?Я знаю операцию LIKE, но ее синтаксис:

WHERE column_name LIKE pattern

Как искать во всех столбцах?Любой, как указать, что это точное ключевое слово или регулярный экспресс?

1 Ответ

3 голосов
/ 20 октября 2011
SELECT * FROM your_table_name WHERE your_column_name LIKE 'search_box_text';

Где search_box_text - это то, что вы вводите в поиске.На странице результатов также будет указано, какой запрос он сделал.Тот же запрос с регулярными выражениями:

SELECT * FROM your_table_name WHERE your_column_name REGEXP 'search_box_text';

Помните, что подстановочный знак в mysql равен%.Например."LIKE"% part_search_text% '

Если вы хотите выполнить поиск по нескольким столбцам, вы можете проверить, какие столбцы находятся в таблице:

DESCRIBE TABLE your_table_name;

Или, если вы уже знаете свои столбцы:

SELECT * FROM your_table_name 
WHERE your_column_1 LIKE '%search%' 
AND your_column_2 LIKE '%search%'
AND your_column_3 LIKE '%search%';
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...