菜鸟一个,不太懂具体是想怎么样,但是按照我的理解稍微说一下我的想法,有误的地方尽请谅解!
以下的说法全部基于我的理解:ID_Start_Date是注册时间,Service_Start_Date是服务开始时间,ID_End_Date是结束服务的时间。“计算从每个人服务开始日的前10个月”是Service_Start_Date-ID_Start_Date;“服务开始后的8个月”是ID_End_Date-Service_Start_Date。
假如你的数据是纵向的,比如第一行记录001在xxxx-xx-xx注册,在xxxx-xx-xx使用,在xxxx-xx-xx结束;第二行记录001在xxxx-xx-xx注册,在xxxx-xx-xx重新使用,在xxxx-xx-xx再次结束;第三行以此类推...这种类型的数据,直接算每一行的结果再加起来就可以了吧,如果≥10/8的数据就是10/8,如果小于10/8的数据就等于计算出来的数据。
假如你的数据是像excel里一样的,中断使用的信息是记录Registration Notes的话,存在一种情况,可能不止中断使用一次,但假设每次记录的信息格式都是一样的(如:ID 001 ended on 7/26/2018 but resumed on 7/1/2019 through 10/22/2019; ID 001 ended on 3/9/2020 but resumed on 5/1/2020 through 6/25/2020; ...),那或许可以通过正则表达式提取相关的日期,再通过转置处理成纵向数据,然后就如上所说。
如果你能提供更详细的信息和例子,包括变量的计算公式,最后得到的结果等,或许我可以给你一个更详细的答复。
