Задача по поиску в БД. Очень прошу помочь! За денюжку ))

Статус
В этой теме нельзя размещать новые ответы.

Endrus

Новичок
Задача по поиску в БД. Очень прошу помочь! За денюжку ))

Добрый день!

Требуется помощь в решении задачи:

Есть MySQL-База "Фамилия-Толкование" (Т.е., база с толкованием происхождения фамилии). Размер дампа базы - 17,9 мб, кодировка cp1251, 15396 фамилий.

Структура: "ID", "title", "about", "word".
Пример: "40136", "Донин", "*Расшифровка", "Д"(Первая буква фамилии)

Требуется сделать оптимальным образом поиск, чтобы по введенной пользователем фамилии возвращалось значение "About", т.е. расшифровка.


Готов оплатить данную работу! Очень прошу откликнуться знающих!!

Заранее Спасибо!
 

Фанат

oncle terrible
Команда форума
странно.
из базы на картинку достать можешь, а просто вывести на экран - нет.
непонятно, в чем проблема.
 

Endrus

Новичок
Проблема организовать оптимальным образом поиск.. Если просто искать по всей таблице - начинает сильно висеть!

Идей по оптимизации нету, т.к. я новичoк ((
 

Фанат

oncle terrible
Команда форума
я так понимаю, что "искать по всей таблице" - это делать запрос
select * from table и потом перебирай каждый ответ, сравнивать с введенной строкой?
 

Endrus

Новичок
Да, именно так

-~{}~ 09.09.09 12:16:

А такую форму можно использовать? Т.е., искать только в результатах, удовлетворяющих условию "Первая буква = Д" (К примеру)?

select * from db_guest where (word='Д')

Синтаксис такой, кажется?
 

Фанат

oncle terrible
Команда форума
А идея сразу искать введенную фамилию тебе не приходит в голову?
 

Endrus

Новичок
Автор оригинала: *****
А идея сразу искать введенную фамилию тебе не приходит в голову?
Приходит.. Только разве это будет быстрее? Я имел ввиду, что коммандой select * from db_guest where (word='Д') - можно сократить время поиска за счет того, что сначала произойдет отфильтровывание лишнего (Т.е. всех строк, у которых первая буква не "Д")
 

Фанат

oncle terrible
Команда форума
то есть, поиск по фамилии лишнее не отфильтрует
оригинальный стиль мышления.

-~{}~ 09.09.09 12:31:

ВМЕСТО БУКВЫ искать сразу ФАМИЛИЮ тебе идея в голову не приходит?
 

Endrus

Новичок
Блин! Да я не об этом писал!

В таблице есть отдельный столбец "word", в котором находится первая буква каждой фамилии. Т.е., отфильтровывая по этому столбцу мы ищем ТОЛЬКО по 100-150 строкам.

А вот если искать сразу по всей таблице - это поиск по 15000 строкам!!

Может, я чего-то не правильно понимаю, но разве первый способ не быстрее?
 

Фанат

oncle terrible
Команда форума
Дятел. Отфильтровывая по столбцу title, в котором находятся все буквы фамилии, мы ищем по ... догадаешься самостоятельно, скольким строкам?
 

Endrus

Новичок
Слушай, уважаемый *****! А ты можешь не гнуть пальцы, а набросать мне этот пресловутый код?

Я в самом начале написал, что в теме не силен. Умника из себя не строил, а просил помочь.. Написал даже, что готов отблагодарить финансово.

В чем вообще проблема?
 

Фанат

oncle terrible
Команда форума
На вопрос ответь

-~{}~ 09.09.09 15:08:

Впрочем, ладно.
Тема закрыта. Оффтопик.
 
Статус
В этой теме нельзя размещать новые ответы.
Сверху