SQLinfo.ru - Все о MySQL

Форум пользователей MySQL

Задавайте вопросы, мы ответим

Вы не зашли.

#1 12.03.2008 13:50:03

alekseev
Участник
Зарегистрирован: 12.03.2008
Сообщений: 2

поиск совпадений по несокльким полям таблиц(ы)

Уважаемые господа,

прошу помочь мне со следующей проблемой. Имеется база данных с 5 таблицами. Имеется форма поиска по базе данных, в которой пользователь задает несколько параметров поиска (например, интервал дат занесения записей). Кроме того, на форме поиска записей имеется строка поиска в которую пользователь может вводить либо поисковое слово целиком либо его часть. При этом поиск введенного в поисковую строку слова должна производиться по нескольким полям таблицы (например, запись состоит из 12 полей, проверяться на совпадения дожны 10 из 12 полей).

Я создал полнотекстовые индексы и проверяю сейчас на совпадения конструкцией match...against, про которую здесь уже много написано. Получается так, что части слова она ищет некорректно (выводит также левые записи, которые не нужно) или не ищет вообще. Сейчас я хотел бы найти решение без match...against, но пока кроме

SELECT * from table where pole_1 like "%строка_поиска%" OR pole_2 like "%строка_поиска%" и т.д. все 10 полей,

ничего в голову не идет.

Может быть, кто-то предложит решение поэффективнее с высоты своего опыта в mySQL? Я пока еще не очень опытный пользователь.

Конфигурация: Windows server 2003 + PHP 4.0.4 + mySQL 4.0.18

Заранее благодарю всех за оказанную помощь.

Неактивен

 

#2 12.03.2008 14:27:32

rgbeast
Администратор
MySQL Authorized Developer and DBA
Откуда: Москва
Зарегистрирован: 21.01.2007
Сообщений: 3878

Re: поиск совпадений по несокльким полям таблиц(ы)

Например:
SELECT * from table where CONCAT(pole_1, ' ', pole_2) like "%строка_поиска%"

Полнотекстовый индекс по-русски не всегда корректно работает. Если Вы хотите профессиональный поиск, индексируйте сами и сами потом ищите по ключевым словам. Например http://www.habrahabr.ru/blog/webdev/24953.html

Неактивен

 

#3 12.03.2008 15:47:32

alekseev
Участник
Зарегистрирован: 12.03.2008
Сообщений: 2

Re: поиск совпадений по несокльким полям таблиц(ы)

Спасибо огромное за оперативность - очень рад, что нашел такой форум. Попробую запрос с CONCAT smile

Неактивен

 

Board footer

Работает на PunBB
© Copyright 2002–2008 Rickard Andersson