1
我需要生成基于以下表格报告:如何写一个SQL查询来生成报告
CALLS_FOR_PROPOSALS
ID|Name
--+------
1|Call 1
2|Call 2
3|Call 3
PROPOSALS
ID|Call ID|Title
--+-------+----------
1| 1|Proposal 1
2| 2|Proposal 2
3| 2|Proposal 3
PROPOSAL_STATUSES
ID|Proposal ID|Status ID
--+-----------+---------
1| 1| 1
2| 2| 1
3| 3| 1
4| 3| 2
STATUSES
ID|NAME
--+------------
1|Not Reviewed
2|Processing
3|Accepted
4|Rejected
有了这个样本数据,有3个项目征集。有三个建议;一个用于呼叫1,另一个用于呼叫2.(呼叫3没有任何提议。)每个提议至少有一个状态分配给它。将行插入PROPOSALS表时,会将相应的行插入到PROPOSAL_STATUSES中,从而使Proposal的初始默认状态为1(未评论)。每次状态更改时,都会在PROPOSAL_STATUSES表中插入一个新行,以便保留状态更改的历史记录。我需要为每个呼叫生成一份报告,显示已提交的提案数量以及已有多个状态的提案的数量(即状态已从默认状态至少更改过一次)。对于上述示例数据,结果将如下所示:
Call Name|Proposals Submitted|Proposals Reviewed|
---------+-------------------+------------------+
Call 1 | 1| 0|
Call 2 | 2| 1|
Call 3 | 0| 0|
如何根据上述表结构编写SQL查询以生成此报表?谢谢你的帮助。
谢谢,我感谢您的帮助! – jg8273