【问题标题】:stock and cart mixed query库存和购物车混合查询
【发布时间】:2011-04-03 20:21:12
【问题描述】:

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

例如,如果我有 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

我怎样才能得到柜台-(他在购物车里有什么)?

【问题讨论】:

    标签: mysql cart stock


    【解决方案1】:
    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
    

    【讨论】:

    • 很好,但是我如何丢弃数量为 0 的行?
    • 末尾的having counter > 0 删除任何没有剩余库存的行
    猜你喜欢
    • 2010-11-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-04-10
    • 1970-01-01
    • 1970-01-01
    • 2015-10-10
    相关资源
    最近更新 更多