ANTICHAT.XYZ    VIDEO.ANTICHAT.XYZ    НОВЫЕ СООБЩЕНИЯ    ФОРУМ  
Баннер 1   Баннер 2
Antichat снова доступен.
Форум Antichat (Античат) возвращается и снова открыт для пользователей. Здесь обсуждаются безопасность, программирование, технологии и многое другое. Сообщество снова собирается вместе.
Новый адрес: forum.antichat.xyz
Вернуться   Форум АНТИЧАТ > Программирование > PHP, PERL, MySQL, JavaScript
   
Ответ
 
Опции темы Поиск в этой теме Опции просмотра

можно ли искать текст сразу по всей БД?
  #1  
Старый 08.12.2008, 12:43
Аватар для Дикс
Дикс
Познавший АНТИЧАТ
Регистрация: 16.04.2006
Сообщений: 1,488
Провел на форуме:
2209675

Репутация: 537


Отправить сообщение для Дикс с помощью ICQ
По умолчанию можно ли искать текст сразу по всей БД?

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

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

?
 
Ответить с цитированием

  #2  
Старый 08.12.2008, 13:41
Аватар для Pashkela
Pashkela
Динозавр
Регистрация: 10.01.2008
Сообщений: 2,841
Провел на форуме:
9220514

Репутация: 3338


Отправить сообщение для Pashkela с помощью ICQ
По умолчанию

http://dev.mysql.com/doc/refman/5.1/en/fulltext-search.html
 
Ответить с цитированием

  #3  
Старый 09.12.2008, 08:46
Аватар для Дикс
Дикс
Познавший АНТИЧАТ
Регистрация: 16.04.2006
Сообщений: 1,488
Провел на форуме:
2209675

Репутация: 537


Отправить сообщение для Дикс с помощью ICQ
По умолчанию

блин, если несложно, приведите просто примеры плз
на работе башка пухнет, нет времени читать доки. мне просто хочется знать, возможно ли это и насколько сложно
 
Ответить с цитированием

  #4  
Старый 09.12.2008, 14:02
Аватар для m0nsieur
m0nsieur
Участник форума
Регистрация: 08.04.2008
Сообщений: 242
Провел на форуме:
2230263

Репутация: 229
По умолчанию

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

  #5  
Старый 09.12.2008, 16:06
Аватар для FeoЩту
FeoЩту
Познающий
Регистрация: 13.11.2008
Сообщений: 31
Провел на форуме:
70426

Репутация: 14
По умолчанию

по всей бд найти нельзя, только по таблицам, а любое_поле = *
 
Ответить с цитированием
Ответ





Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 


Быстрый переход




ANTICHAT.XYZ