DIvan4ik
@DIvan4ik
Web-мастер с 3-х летним стажем

Как сформировать корректный запрос в связанную таблицу?

Допустим есть 3 таблицы: Products, Attributes, Attribute_values (связана с двумя другими по attribute/product_id).

Есть 2 товара - Компьютерный стул и Кресло
Есть 3 Атрибута - Наличие спинки, Подлокотники, Изменяемая высота.

И вопрос: Как вытащить товары у которых все 3 атрибута в наличии (=1) через смежную таблицу? ( должен получиться только компьютерный стул)
  • Вопрос задан
  • 221 просмотр
Пригласить эксперта
Ответы на вопрос 1
@fynivx
Software Engineer ( .NET )
Вот так, например (это T-SQL):
select P.*
  from Products as P
  join Attribute_values as AV
    on AV.ProductID = P.ID
   and AV.Value = 1
   and AV.AttributeID in (attr1, attr2, attr3)
 group by P.*
having count(AV.ID) = 3


Ну, естественно сочетание ProductID/AttributeID в Attribute_values должно быть уникальным.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы