股票和购物车混合查询

时间:2011-04-03 20:21:12

标签: mysql cart stock

我有库存和购物车,我想创建一个查询,向每个用户显示库存车列表

例如,如果我有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 个答案:

答案 0 :(得分:3)

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