|
|
|
|
|
для: Trianon
(23.09.2010 в 15:06)
| | > об индексах можно забыть.
Если данный вариант сильно нагрузит базу, то можно будет забыть о поиске по этому полю - однако попробовать стоит.
Спасибо за совет. | |
|
|
|
|
|
|
|
для: neadekvat
(23.09.2010 в 15:01)
| | как обычно ...
Что тут можно посоветовать кроме FIND_IN_SET() ?
об индексах можно забыть. | |
|
|
|
|
|
|
|
для: Trianon
(23.09.2010 в 14:54)
| | Неа, не вариант, уже спрашивал.
Там слишком много всего завязано на этой конкретной структуре. Я всех объемов даже представить не могу. Ковырнешь - и все развалиться может. Да и кто мне даст там ковырять-то.. | |
|
|
|
|
|
|
|
для: neadekvat
(23.09.2010 в 14:43)
| | >names - fail, синонимы названия через запятую.
>Возможно, при проектировании не учитывалось,
а исправить? Нет? | |
|
|
|
|
|
|
| Доброго всем времени суток.
Есть таблица:
prog_id | name | names
prog_id - id программы в базе;
name - название программы;
names - fail, синонимы названия через запятую.
Возможно, при проектировании не учитывалось, что будет производиться поиск по синонимам, но теперь такая необходимость возникла. При поиске можно выбрать только точное название.
Т.е. для name запрос выглядит "... WHERE name = '$query%'", для names же такое, очевидно, не пройдет.
Хотел бы увидеть мнение форумчан по возможному методу решения задачи. Или, возможно, рационально (т.е. без больший нагрузок, например, регулярными или тупым перебором всех записей) решить задачу нельзя? | |
|
|
|
|