Как сделать поиск по базе mysql?

Статус
В этой теме нельзя размещать новые ответы.
Задача сформировать выдачу "релевантно" - задача и разработчика СУБД. И понятия "более соотвествующий или менее соответствующий" легко реализуются, это тоже может реализовать разработчик СУБД. Что, с помощью LIKE и ORDER BY трудно сделать "релевантную" выдачу для поиска по фразе "ремонт машин"? Ясно что наверх должны попасть записи где есть слова "ремонт" и "машин" как более релевантные. За ними содержащие только одно слово - "ремонт" (часов, например). Или (покраска) машин.
Любопытно взглянуть не на абстрактные рассуждения, а на практическую реализацию этих рассуждений при помощи LIKE :D
Готов даже не видя её поспорить, что полнотекстовый поиск разорвёт её как тузик грелку.
 
Любопытно взглянуть не на абстрактные рассуждения, а на практическую реализацию этих рассуждений при помощи LIKE :D
Готов даже не видя её поспорить, что полнотекстовый поиск разорвёт её как тузик грелку.

Посмотрите
Это задача поиска в небольшой базе (думается, до 1000 записей), в которой данные не очень нормализованы. Два текстовых поля. Вы по-прежнему настаиваете что:
1. здесь нужен полнотекст?
2. что на такой маленькой базе он будет корректно работать (где полно названий с совпадающей правовой организацией)?
 
Может не стоит уходить от вопроса ТС, мне кажется в базе с названием diplom текста будет куда больше, чем в базе с названием фирм.
Это раз.

А второе я написал в посте №31, и пока не увижу от Вас реализации той задачки при помощи LIKE и сравнения её с FULLTEXT-поиском любые дальнейшие рассуждения останутся пустой болтовнёй.
 
Внимательно читаем ТС:
Хочу на своем сайте сделать поиск.
...имеется база 'diplom', в этой базе есть таблицы 'news', 'student' и 'univer'....каким образом можно осуществить поиск по базе данных?
И где "уход" от вопроса ТС? :) Поясните пожалуйста.
мне кажется :)ay:) в базе с названием diplom текста будет куда больше, чем в базе с названием фирм.
А мне кажется :)D), что задачки вполне сопоставимы. Фамилии студентов, название ВУЗА, новости.... До 10000 записей а то и меньше. Спросим ТС, когда он вернется из бани, на какое количество записей он рассчитывает, хотя бы примерно? ;)
А второе я написал в посте №31...
Ну вот ваш пост :
Любопытно взглянуть не на абстрактные рассуждения, а на практическую реализацию этих рассуждений при помощи LIKE :D...
Пример практической реализации своих рассуждений я привел. На совершенно сопоставимом примере. И, очевидно, вы невнимательно следите за рассуждениями - я утверждаю что такие задачи не решаются полнотекстом. Нужен именно LIKE. Так что вы напрасно ожидаете
реализации той задачки при помощи LIKE и сравнения её с FULLTEXT-поиском любые дальнейшие рассуждения останутся пустой болтовнёй.
Для таких задач полнотекст непригоден, ИМХО. Один из аргументов в перечитайте в моем предыдущем посте, пункт 2.
 
У меня такое ощущение, что я выражаюcь не на русском понятном языке, а на каком-то инопланетном диалекте :D

Повторюсь, мне несложно.
Есть суждение
Задача сформировать выдачу "релевантно" - задача и разработчика СУБД. И понятия "более соотвествующий или менее соответствующий" легко реализуются, это тоже может реализовать разработчик СУБД. Что, с помощью LIKE и ORDER BY трудно сделать "релевантную" выдачу для поиска по фразе "ремонт машин"? Ясно что наверх должны попасть записи где есть слова "ремонт" и "машин" как более релевантные. За ними содержащие только одно слово - "ремонт" (часов, например). Или (покраска) машин.
Предлагаю вам его реализовать (заодно и узнать насколько это просто).
Затем я делаю тоже самое, но при помощи полнотекстового поиска.
Сравниваем и делаем выводы. Голые цифры, без всяких ИМХО.
Согласны? Или дальше пустословства дело не идёт?
 
У меня такое ощущение, что я выражаюcь не на русском понятном языке, а на каком-то инопланетном диалекте :D

Поймите и меня, мне тоже непросто... ведь, случается, вам что-то кажется. :D А чужая душа, знаете ли, потемки... :D
Еще раз обращаю ваше внимание - тщательно изучите ветку, ссылку на которую дал в одном из прошлых постов, пример с ООО и прочим. Я утверждаю, что вопрос ТС - то же самое, что в той ветке. Ее реализация приведена. Она элементарна. Так что никаких ИМХО.
...я делаю тоже самое, но при помощи полнотекстового поиска. Сравниваем и делаем выводы. Голые цифры, без всяких ИМХО.
Вот это - пожалуйста! С нетерпением буду ждать! :)
 
Вот это - пожалуйста! С нетерпением буду ждать!
Да без проблем.
Только когда увижу то, о чём писал в предыдущих постах.
 
Да без проблем.
Только когда увижу то, о чём писал в предыдущих постах.

То, о чем вы писали в прошлых постах, вы давно уже имеете возможность увидеть! Перечитайте ветку с конкретной реализацией аналогичной задачи, ссылку на которую я дал. А если вас затрудняет слово "аналогичная", синоним ему - "похожая", "эквивалентная". Можно, наконец, справиться по словарю. :)
Подсказка. "Релевантность", т.е. соответствие выдачи поисковой фразе, в той аналогичной задаче, реализована определением веса каждой записи суммированием LIKE, содержащим каждое поисковое слово. Если LIKE находит данное слово, он возвращает 1. Не находит - ноль. Результаты LIK'ов суммируются. Каждому понятно, чем больше слов поисковой фразы содержит запись, тем "вес" ее будет больше, тем выше она будет в выдаче. В простейших случаях (несложные критерии поиска, небольшое количество записей в базе) этого достаточно. (Есть еще одна причина, пока умолчу). Это простейшая реализация "релевантности".

ПЫ.СЫ
А что касается вашего замечания про мою якобы "пустую болтовню", то я конкретный пример привел, и реализацию его вы увидели. А от вас же пока услышано только хвастливое утверждение про тузика и его грелку. Предъявите же, наконец, вашего тузика! :)
 
pavel012007, у меня стойкое ощущение что я разговариваю со школьником, причём отнюдь не последних классов.
Есть конкретная задачка (там где вы писали про ремонт, машины и часы). Предлагаю вам решить её при помощи LIKE (тем более вы где-то в соседней ветке видели решение и вам будет несложно это сделать), я решаю при помощи FULLTEXT и сравниваем результаты. Всё, ничего более. Текст я могу предоставить.

ЗЫ Хотя я прекрасно понимаю, что сливать кивая на соседний топик куда проще, чем взять и реализовать то, о чём получается так лихо гиппотезировать.

Предъявите же, наконец, вашего тузика!
Через 15 минут после того, как увижу код вышеописанного, а не мысли.

ЗЗЫ Пока я не увижу код, общаться в этом топике нам больше не о чем. Если будет потребность - ЛС.
 
Статус
В этой теме нельзя размещать новые ответы.
Назад
Сверху