sql 日期之间的总销售额
sql sum sales between date
图片说明一切。我的目标是最后table using sql.
我会举例说明逻辑。
Table 1 表示预期销售额。例如,第 22 条只能在 1 月 1 日至 1 月 4 日之间出售。为简单起见,我们假设商店每天都营业。
Table 2 显示每件商品的每日销售额。例如文章被卖了 1 janv 2 janv 3 janv 4 janv。但是,对于第 22 篇文章,4 janv 不在 [1 janv 到 3 janv] 范围内。因此,要获得第 22 条的销售额总和,我们应该省略 4 jan。所以第22条的计算是2+4+5=11.
数据类型
Table 1
- 艺术编号:整数
- 来自:日期
- planned_to: 日期
Table 2
- 艺术编号:整数
- 天:日期
- 销售额:浮动
SELECT t1.artNO
,t1.
,t1.planned_to
,SUM(sales) as Total
FROM table1 t1
INNER JOIN table2 t2 ON t1.artNo = t2.artNo
GROUP BY t1.artNO
,t1.
,t1.planned_to
像这样:
SELECT
t1.artNo
, t1.[from]
, t1.planned_to
, SUM(t2.sales) total
FROM
table1 t1
JOIN table2 t2 ON
t1.artNo = t2.artNo
AND t2.day >= t1.[from]
AND t2.day <= t1.planned_to
GROUP BY
t1.artNo
, t1.[from]
, t1.planned_to
图片说明一切。我的目标是最后table using sql.
我会举例说明逻辑。
Table 1 表示预期销售额。例如,第 22 条只能在 1 月 1 日至 1 月 4 日之间出售。为简单起见,我们假设商店每天都营业。
Table 2 显示每件商品的每日销售额。例如文章被卖了 1 janv 2 janv 3 janv 4 janv。但是,对于第 22 篇文章,4 janv 不在 [1 janv 到 3 janv] 范围内。因此,要获得第 22 条的销售额总和,我们应该省略 4 jan。所以第22条的计算是2+4+5=11.
数据类型
Table 1
- 艺术编号:整数
- 来自:日期
- planned_to: 日期
Table 2
- 艺术编号:整数
- 天:日期
- 销售额:浮动
SELECT t1.artNO
,t1.
,t1.planned_to
,SUM(sales) as Total
FROM table1 t1
INNER JOIN table2 t2 ON t1.artNo = t2.artNo
GROUP BY t1.artNO
,t1.
,t1.planned_to
像这样:
SELECT
t1.artNo
, t1.[from]
, t1.planned_to
, SUM(t2.sales) total
FROM
table1 t1
JOIN table2 t2 ON
t1.artNo = t2.artNo
AND t2.day >= t1.[from]
AND t2.day <= t1.planned_to
GROUP BY
t1.artNo
, t1.[from]
, t1.planned_to