日期间隔 - 求和

时间:2017-06-28 08:27:40

标签: sql sas datastep

我有一张日期表:

Table1
Date_start  Date_end
01JUL1997   01JUL1998
01JUL1998   01APR1999
01APR1999   01OCT2000
01OCT2000   01JUL2001

和第二个表格,其中包含日期和编号:

Table2
Date_of_pay           Cash 
01DEC1999:00:00:00  $377.00
01DEC1999:00:00:00  $377.00
01JAN2000:00:00:00  $377.00
01JAN2000:00:00:00  $377.00
01JAN2000:00:00:00  $377.00
01JAN2000:00:00:00  $377.00

我想在表1中为表1中的每个区间计算现金总和。 我不知道如何在数据步骤中使用proc sql。

感谢您的帮助。

1 个答案:

答案 0 :(得分:0)

请尝试以下查询:

SELECT
    table1.date_start, table1.date_end,
    SUM(table2.cash) as cash
FROM 
    table1 INNER JOIN table2
    ON  table2.date_of_pay >= table1.date_start
    AND table2.date_of_pay <= table1.date_end
GROUP BY
    table1.date_start, table1.date_end