Новости
Документация
Download
Webboard
Поиск
FAQ/ЧаВо
Обратная связь




MySQL.RU - Webboard



Вернуться
Поиск в строках по условию AND (Casper) 26/12/2011 - 09:39:00
      Re: Поиск в строках по условию AND (Akina) 26/12/2011 - 16:45:57
      Re: Поиск в строках по условию AND (Casper) 26/12/2011 - 20:05:13
      Re: Поиск в строках по условию AND (Akina) 26/12/2011 - 21:47:37
      Re: Поиск в строках по условию AND (Casper) 26/12/2011 - 22:03:01
      Re: Поиск в строках по условию AND (Akina) 27/12/2011 - 18:29:39
      Re: Поиск в строках по условию AND (Casper) 28/12/2011 - 09:04:35

> Original message text:
> From: Casper - 26/12/2011 - 09:39:00
> Subject:Поиск в строках по условию AND
> -----------------
> Пожалуйста, подскажите (попытаюсь смоделировать упрощенную ситуацию)
>
> есть две таблицы с товаром и хар-ми
> tovar(id_tovar, name_tovar)
> harakt(id, id_tovar, name_harakt, znach_harak)
>
> пусть в товаре 10 записей, а в харак-ах 100 записей
>
> каждый товар имеет по десятку характеристик (цвет, форма, вес и т.д.)
>
> Задача: передается ряд значений харак-к (znach_harak) - нужно выбрать по ним товар. По условию ИЛИ все просто: объединение таблиц, оператор IN(). Группировка по id_tovara и любой товар где есть одна из перечисленных хар-к найден и выбран
>
> А КАК БЫТЬ ЕСЛИ НАДО одновременно искать по двум, трем ??
>
> ну например
>
> цвет:красный И форма:круглая И вес:до100кг
>
> т.е. товар у которого одновременно все три характеристики "стрельнули"
>
> Подскажите как правильно решить задачу ?
> У меня есть две идеи но там одна другой краше )
>


From: Casper - 26/12/2011 - 20:05:13
Subject:Поиск в строках по условию AND
-----------------
Спасибо... я видимо прочитал ваши мысли и днем сам до этого дошел
все получилось

но, правда в одном запросе у меня уже есть групповая операция на выборку и добавление еще групповой операции на фильтрацию не катит

у меня две мысли:

1) попробовать перефразировать запрос на одну общую групповую операцию - что врятли (группировать же результат другой группировки же нельзя ??? ну кроме использования виртуальных таблиц промежуточных)

2) ну или я еще поставленную задачу знаете как придумал решить ? для каждой группы (то что было having) добавлять копию таблицы с характеристиками и там уже через условие по AND для каждой группы выбирать

но т.к. кол-во групп хар-к динамически меняется в админке - боюсь это крайне расточительный метод

В любом случае спасибо !


[Это сообщение - спам!]

Последние сообщения из форума

Уважаемые посетители форума MySQL.RU!
Убедительная просьба, прежде чем задавать свой вопрос в этом форуме, обратите внимание на разделы:
- ответы на наиболее часто задаваемые вопросы - FAQ
- раздел документация
- раздел поиск по сообщениям форума и документации
Также, старайтесь наиболее подробно указывать свою ситуацию (версию операционной системы, версию MySQL, версию программного обеспечения, по которому возникает вопрос, текст возникающих ошибок, и др.)
Помните, чем конкретнее Вы опишете ситуацию, тем больше шансов получить реальную помощь.
 Имя:
 E-mail:
 Тема:
 Текст:
Код подтверждения отправки: Code
40860



РЕКЛАМА НА САЙТЕ
  Создание сайтов | |