需要从销售订单主表salers_order_main 和明细表salers_order_items_item 统计当日销量并有同比昨日

需要从销售订单主表salers_order_main 和明细表salers_order_items_item 统计当日销量并有同比昨日

晚上好🌙🌙🌙
本答案参考ChatGPT-3.5
要实现销量查询日、月同比的方案,需要从销售订单主表和明细表中进行统计。以下是一个基本的实现方案:
计算当日销量:
计算同比昨日销量:
计算同比月销量:
计算同比去年同期销量(可选):
基于以上方案,可以编写SQL查询语句来实现日、月同比销量的统计。在具体编写查询语句时,需要根据数据库类型和数据表结构进行相应的适配。
示例SQL查询语句:
-- 当日销量查询
SELECT
SUM(item.quantity) AS today_sales
FROM
salers_order_main main
JOIN
salers_order_items_item item ON main.order_id = item.order_id
WHERE
DATE(main.order_date) = CURDATE();
-- 同比昨日销量查询
SELECT
SUM(item.quantity) AS yesterday_sales
FROM
salers_order_main main
JOIN
salers_order_items_item item ON main.order_id = item.order_id
WHERE
DATE(main.order_date) = DATE_SUB(CURDATE(), INTERVAL 1 DAY);
-- 同比月销量查询
SELECT
SUM(item.quantity) AS this_month_sales
FROM
salers_order_main main
JOIN
salers_order_items_item item ON main.order_id = item.order_id
WHERE
MONTH(main.order_date) = MONTH(CURDATE());
-- 同比去年同期销量查询(可选)
SELECT
SUM(item.quantity) AS last_year_same_period_sales
FROM
salers_order_main main
JOIN
salers_order_items_item item ON main.order_id = item.order_id
WHERE
YEAR(main.order_date) = YEAR(CURDATE()) - 1
AND
MONTH(main.order_date) = MONTH(CURDATE());
以上SQL查询语句提供了基本的思路和方法,具体的SQL语句需要根据数据库类型和实际业务需求进行调整和优化。