PDA

Просмотр полной версии : можно ли искать текст сразу по всей БД?


Дикс
08.12.2008, 12:43
сейчас, чтобы найти что-нибудь, типа текста из темплейта в БД mysql - я делаю экспорт всех таблиц ДБ и ищу этот текст в дампе.

можно ли написать запрос типа
select * from database where любое_поле.любой таблицы like('%нужный_текст%')

?

Pashkela
08.12.2008, 13:41
http://dev.mysql.com/doc/refman/5.1/en/fulltext-search.html

Дикс
09.12.2008, 08:46
блин, если несложно, приведите просто примеры плз
на работе башка пухнет, нет времени читать доки. мне просто хочется знать, возможно ли это и насколько сложно

m0nsieur
09.12.2008, 14:02
Подготавливаешь таблицу добавляя индекс FULLTEXT ко всем полям по которым будет производиться полнотекстовый поиск, так делаешь во всех таблицах по которым собираешься искать.
ALTER TABLE `table_name` ADD FULLTEXT ('column_name')
А вот так примерно ищешь, другие колонки добавишь через join
SELECT * FROM table where MATCH (column1,column2) AGAINST ('текст_для_поиска')

FeoЩту
09.12.2008, 16:06
по всей бд найти нельзя, только по таблицам, а любое_поле = *