通过不同的方式聚合查询中的 sql 表
P粉162773626
P粉162773626 2023-09-09 13:54:44
0
1
457

我在sql中有三个表

order_table (order_id, product_id, amount)
products_table (product_id, name, price_usd),
all_orders (order_id, customer_id, order_date, total_amount),

我想生成一个 SQL 查询,它按月输出过去 12 个月每个产品的总收入。

我不知何故需要分离出不同的产品,但我不确定如何构建这样的查询。

任何指针都会很棒

P粉162773626
P粉162773626

全部回复(1)
P粉043432210

给出的答案是使用WITH....,这是不需要的:

select 
   DATE_FORMAT(all_orders.order_date, '%Y-%m') as order_date, 
   name as product_name, 
   sum(total_amount) as total_quantity, 
   sum(price_usd * total_amount) as total_revenue 
from all_orders
LEFT JOIN order_table USING (order_id)
LEFT JOIN products_table USING (product_id)
where all_orders.order_date >= date_sub(current_date(), interval 12 month)
group by 1,2 ;

应该做同样的事情(未经测试)

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板