繁体   English   中英

SQL 帮助 - 每月销售总额

[英]SQL Help - Totals From Monthly Sales

所以我在 mySQL 数据库中提取所有带有特定型号前缀的项目,我按产品名称分组,我正在计算数量(一个订单可能有多个产品),我正在打印批发price 是手动 CASE 语句,根据完整型号名称设置价格。

然后表格显示:产品、型号、数量、批发价。

我想做的是每个产品都有一个总行数(数量 * 批发价),在最底部有每月总数。

问题是批发价格不是官方专栏,因为它是一个丑陋的案例声明,每行设置它。

这是我的代码的净化版本

SELECT 
products_name, 
count(products_quantity) as quantity,

CASE WHEN products_model = '123-ir' THEN 8.50
     WHEN products_model = '123#262' THEN 8.50 
     WHEN products_model = '123#262red' THEN 10.50 
     WHEN products_model = '123#249' THEN 8.50
     WHEN products_model = '123#217' then 3.00
     WHEN products_model = '123#258' then 3.50 
     WHEN products_model = '123#246' then 2.00          
     ELSE 'fix me' END AS wholesale_price,
     '' as total


FROM cart.orders INNER JOIN cart.orders_products ON orders.orders_id = orders_products.orders_id
 WHERE YEAR(date_purchased) = YEAR (CURDATE()) AND MONTH(date_purchased) > MONTH (CURDATE()) - 1   -- in the last month
AND cart.orders_products.products_model like '123%' 
GROUP BY products_name
ORDER BY products_name

我会查看 WITH 语句( https://dev.mysql.com/doc/refman/8.0/en/with.html )或子查询。 然后,您可以将价格抽象为一个公用表表达式,并像使用普通列一样使用结果。

暂无
暂无

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

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