склад и корзина смешанный запрос - PullRequest
2 голосов
/ 04 апреля 2011

У меня есть запас и корзина, я хочу сделать запрос, который показывает каждому пользователю список корзины

например, если у меня в наличии 5 яблок и у него в корзине 3 яблока, то при поиске яблок он должен видеть только 2 (примечание: я группирую товары по типу)

базовый стол для склада

id,type,price,seller,...
1,apple,10,s1
2,apple,10,s2
3,orange,5,s1
3,apple,10,s1

при условии, что он выбрал 2 яблока

для корзины:

id,type,quantity
1,apple,2

поэтому мой запрос просто выберет 2 случайных яблока при оформлении заказа (да, так и должно быть в соответствии с моим сценарием).

Поэтому, когда я хочу снова показать товары со склада, я делаю:

SELECT *,count(*) as counter FROM stock group by type

как я могу получить счетчик (что у него в корзине)?

1 Ответ

3 голосов
/ 04 апреля 2011
select s.type, count(*) - (
  select count(*)
  from cart c
  where c.type=s.type
  # and c.userid = X
  ) as counter
from stock s
group by s.type
having counter > 0
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...