有没有一种方法可以使用情况下的列相乘

时间:2019-08-05 14:48:19

标签: sql sql-server case-when

我正在创建一个连接两个表的报告。问题来自一个表#members,可能有多个calendar_periods(即201903),并且成员月份各不相同,分别是:产品X = .80的201903和产品Y = .20的201903。

我想从#claims中提取美元,并将201903的美元($ 1,000)与会员月份相乘,并将它们分别归因于每个产品= X = $ 800和Y = $ 200。

但是,当我执行以下操作时,它适用于上述情况,但是当没有两个相同的calendar_periods时,它将按比例分配给其他人。

例如201803可以是.80,但只有一个记录,现在通过以下计算,我将自己的美元按比例分配80%。有办法解决吗?

我尝试使用a.mm * b.pay作为付费,并确定我正在按比例分配一行记录

select a.*, a.mm * b.paid as paid
into #final_Table_use
from #member_final a 
left join #claims_final b on a.member_id = b.member_id 
                          and a.CALENDAR_PERIOD = b.CALENDAR_PERIOD

我希望当有多个日历周期使用不同产品时,我将按比例分配美元,而不会对具有一个日历周期记录的那些产品按比例分配

0 个答案:

没有答案