将具有日期范围和分组数据的两个表联接起来

时间:2019-06-06 07:37:24

标签: sql django database postgresql

我希望通过基于日期过滤掉单个表中两个表中的数据,然后将数据按两列进行分组。 例如:-用户将提供account_id,start_date和end_date,通过它们我将过滤两个表中的数据。

这是内向表


ID    Account_Id  Brand   Quality Sheets  Weight  Inward_Date
 1        1           B1    Q1      10    10       01-05-2019
 2        1           B1    Q2       5     5       02-05-2019
 3        2           B1    Q1       9     9       03-05-2019
 4        1           B1    Q1       7     7       04-05-2019
 5        1           B2    Q1       2     2       05-05-2019
 6        2           B2    Q2       8     8       06-05-2019
 7        1           B1    Q2       4     4       07-05-2019
 8        1           B1    Q1       4     4       08-05-2019

这是外表


ID    Account_Id  Brand   Quality Sheets  Outward_date
 1       1            B1       Q1     5   02-05-2019
 2       1            B1       Q1     2   03-05-2019
 3       2            B1       Q1     1   03-05-2019
 4       1            B1       Q1     2   04-05-2019
 5       1            B1       Q1     2   05-05-2019

现在,我需要一个查询,该查询将根据Date和Account_ID过滤数据,并结合Brand和Quality列,并添加如下所示的表格

最终输出


Accnt_ID Brand Quality    Opening_Sheets Total_In Total_Out
1        B1      Q1             10         7         9
1        B1      Q2              0         9       NULL
1        B2      Q1              0         2       NULL

输出表的解释:-我想通过将品牌和质量分组在一起来汇总内向和外向表的数据,对那个特定时期内向内和向外的表进行汇总。 Total_Out列将为NULL。 对于“ Opening_sheets”列-代表start_date之前系统中可用的图纸。我想这应该像在该start_date之前获取所有向内的工作表,然后减去它将合计工作表一样。

0 个答案:

没有答案