Подсобите с запросом
От: Grog13 Финляндия  
Дата: 31.07.09 13:23
Оценка:
База MySQL

Три таблицы:

orders { OrderID — PK, ... }
items { OID — FK }
states { OID — FK }

Есть разные статусы заказов, которые хранятся в табличке states.
В табличке items — содержимое заказа.

Возникли трудности с запросом.
Нужно выбрать все заказы:
— у которых нет статусов { CLOSED, SENT }
— в содержании которых есть товары с определенной категорией (например category_id = 4) и для этих заказов нет статуса { PERIODIC }

Трудности в том, как мне анализировать содержимое заказа.
Вот пример.
Есть заказ. У него есть статус SENT. У него в содержании помимо прочего есть товары с категорией 4. У заказа нет статуса { PERIODIC } — его нужно выбрать.
Другой заказ. У него есть статус PERIODIC, есть содержимое с разными категориями (в том числе и 4). Но нет статусов { CLOSED, SENT } — надо выбрать
Третий заказ. У него только товары из категории 4. И нет статуса { PERIODIC } — надо выбрать.
Еще заказ. Есть товары где нет категории 4. И нет статусов CLOSED или SENT — тоже надо выбрать.

Вот. Если не очень понятно объяснил — попробую еще раз
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.