Страница 2 из 2
Re: База данных Mysql
Добавлено: 08.05.2010 20:33:53
Vadim
whs писал(а):Есть мысль что нужно использовать LIKE я правильно мыслью?
Можно сделать, например, так:
Код: Выделить всё
SELECT Состав FROM Таблица WHERE INSTR(Состав, 'Медь')>0
А можно и так:
Код: Выделить всё
SELECT Состав FROM Таблица WHERE Состав LIKE '%Медь%'
Re: База данных Mysql
Добавлено: 10.05.2010 11:18:20
AbakAngelSoft
whs писал(а):есть некое поле называется оно Состав в этом поле перечислены через запятую компоненты Медь Цинк Олово
Если вам нужен нормальный поиск то никогда так не делайте!
Нужно вынести элементы состава в отдельную таблицу и связать с основной через промежуточную таблицу ("многие ко многим"). Тогда поиск строк идеющих в составе определенный элемент станет тривиальной задачей.
Re: База данных Mysql
Добавлено: 11.05.2010 18:41:29
whs
AbakAngelSoft писал(а):Если вам нужен нормальный поиск то никогда так не делайте!
Нужно вынести элементы состава в отдельную таблицу и связать с основной через промежуточную таблицу ("многие ко многим"). Тогда поиск строк идеющих в составе определенный элемент станет тривиальной задачей.
Чем грозит мне выше приведенный способ? чем он хуже и почему ваш вариант лучше? Что делать если у меня будет 80000 элементов?