在SQL中计算损耗

在SQL中计算损耗,sql,Sql,我或多或少不懂sql,所以如果你们中的任何人能给我一些提示,告诉我如何开始处理下面的任务,我将不胜感激 我们有一个数据库,记录了一个非政府组织的定期捐款人的捐款情况。 字段:捐赠者id、日期 我们需要制作一份损耗表,列出捐赠周期和n个月后仍在捐赠该组织的捐赠者比例 当我们从捐赠者的第一次捐赠中计算捐赠者时,第一个周期为100%,请求应检查捐赠者是否在捐赠者第一次捐赠后的第2个月、第3个月进行捐赠 Donation 1 2 3 4 5 6 7 8 9 10 11 don

我或多或少不懂sql,所以如果你们中的任何人能给我一些提示,告诉我如何开始处理下面的任务,我将不胜感激

我们有一个数据库,记录了一个非政府组织的定期捐款人的捐款情况。 字段:捐赠者id、日期

我们需要制作一份损耗表,列出捐赠周期和n个月后仍在捐赠该组织的捐赠者比例

当我们从捐赠者的第一次捐赠中计算捐赠者时,第一个周期为100%,请求应检查捐赠者是否在捐赠者第一次捐赠后的第2个月、第3个月进行捐赠

Donation    1  2  3  4  5  6  7  8  9  10  11

donor 1     1  1  1  0  1  0  1  0  0  0   0 
donor 2     1  1  0  0  0  1  0  0  1  0   0
donor 3     1  0  1  0  0  0  0  0  0  0   0
有什么想法吗?:)谢谢大家!


PS:直到我们知道我们使用excel或google sheets进行此操作,但现在我们有一个5000万行的数据库,所以我被告知要快速找到解决方案。

所需的o/p示例将有助于您的输出应该是什么样的?每个捐赠者的最后一次捐赠是在多久前进行的?那些定期捐款但不是每个月捐款的捐赠者呢?等等。你可能首先想改变你的模式,以关系的方式来做,并有一个表,将一个捐赠者与每行一个月的捐赠链接起来,而不是像13列一这样的电子表格。对不起,我似乎不清楚,当前数据只有2列,dodnor_ID,捐赠_日期,所需格式为13列版本。所需的o/p示例将有助于您的输出应该是什么样的?每个捐赠者的最后一次捐赠是在多久前进行的?那些定期捐款但不是每个月捐款的捐赠者呢?等等。你可能首先想改变你的模式,以关系的方式来做,并有一个表,链接一个捐赠者每行一个月的捐赠,而不是你的电子表格,如13列1。对不起,我似乎不清楚,当前的数据只有2列,dodnor_ID,捐赠_日期,所需的格式是13列版本。