繁体   English   中英

从 2 个表中查找总销售额和总产品,包括一些连接

[英]finding total sales and total products from 2 tables, includes a little concatenation

我有一个产品表,包含以下字段

productid
name
price
catid
deleted      (can be any one from 'y' and 'n')

并且有一张销售表

salesid
productid
salestime
paymentstatus   (enum, can have any one value: COMPLETED, REMAINING, CANCELLED)

现在我需要以下格式的数据

catid         productids          totalproducts           totalsales

在哪里

productids:这将列出已删除 = 'n' 并属于特定类别的所有产品 ID(逗号分隔)

totalproducts:属于特定类别的产品,其中已删除 = 'n'

totalsales:销售额,其中产品属于特定类别,paymentstatus = 'COMPLETED'

任何帮助。

通过此查询,您将获得删除产品的特定类别的总销售额。

无论产品的 state,您是想要这个还是想要一个类别的所有销售额?

SELECT p.catid AS catid, 
       GROUP_CONCAT(DISTINCT p.productid SEPARATOR ',') AS productids, 
       COUNT(DISTINCT p.productid) AS totalproducts, 
       COUNT(s.salesid) AS totalsales
FROM products p
    LEFT OUTER JOIN sales s
        ON s.productid = p.productid
        AND s.paymentstatus = 'COMPLETED'
WHERE p.deleted = 'n'
GROUP BY p.catid

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM