【问题标题】:select multiple rows from tow tables by duplicates of one table通过一个表的重复项从两个表中选择多行
【发布时间】:2016-01-16 19:23:08
【问题描述】:

我要列出畅销书

我有 SALE 表中已售产品的重复列表,并想从 PRODUCT 表中选择这些产品属性

我从表 SALE 中查找重复项的查询是:

SELECT product, COUNT(*) AS COUNT
FROM sale
GROUP BY product
HAVING COUNT(*) > 1
ORDER BY COUNT DESC 

此查询列出了我的bestsellers products,如何按此顺序从PRODUCT 表中列出这些产品属性

【问题讨论】:

    标签: mysql join duplicates


    【解决方案1】:

    在 MySQL 中,您可以只加入产品表:

    SELECT p.product, COUNT(*) AS COUNT
    FROM product p JOIN
         sale s
         ON p.product = s.product
    GROUP BY p.product
    HAVING COUNT(*) > 1
    ORDER BY COUNT DESC ;
    

    这假定p.productPRODUCT 上的主键,它将它链接到SALES。另外,您是只计算“订单”,还是有一个您也关心的“数量”字段?

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-03-05
      • 2020-05-30
      • 1970-01-01
      • 2020-05-31
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多