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

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