首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >mysql fine具体订单类别

mysql fine具体订单类别
EN

Stack Overflow用户
提问于 2015-12-04 16:37:25
回答 2查看 52关注 0票数 0

我有两张桌子。order和product_order。订单表如下:

我想要获得订单,其中添加了一些特定类别的产品。这样的例子,我想知道哪些订单没有category_id 2,3和4。这里order_id: 3有category_id: 3,4,7。但是order_id: 4有category_id: 5,7。所以order_id: 3不能完全满足要求。我主要关心的是,找到那些没有特定产品类别的订单。如果任何订单有多个类别,则如果存在那些阻止category_d的订单将是不可接受的。

实际上,我需要订购其他类别产品的customer_id。如果在一个订单中同时有3和5,我们不允许他出现在此过滤列表中。我们需要知道谁订购了不包括类别2、3和4的产品

EN

回答 2

Stack Overflow用户

发布于 2015-12-04 17:57:24

根据我的理解,这可能是你的问题:

代码语言:javascript
复制
SELECT DISTINCT o.order_id
    FROM order o, order_category oc
WHERE
    o.order_id = oc.order_id
    AND
    oc.category_by NOT IN (2,3,4)

希望它能帮助你..

票数 0
EN

Stack Overflow用户

发布于 2015-12-04 18:01:44

您需要聚合后过滤

代码语言:javascript
复制
SELECT order_id FROM order_category  
GROUP BY  order_id  
HAVING SUM(category_by=2)=0 
AND SUM(category_by=3)=0 
AND SUM(category_by=4)=0
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/34083994

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档