SQL 中的非互斥概率加法?
non-mutually exclusive probability addition in SQL?
当两个事件A和B不互斥时,A或B发生的概率为:
P(A 或 B) = P(A) + P(B) - P(A 和 B)
对于我的问题,它是 f(a,b)=a+b-a*b
现在,如果一个是计算 P(A 或 B 或 C),则必须将该函数的组合链接为 f(c, f(a,b))
有没有一种方法可以在 SQL 中高效地做到这一点,当有很多行要汇总时不使用游标?
更新
基于@MikeP 的回答的完整答案:
SELECT 1-EXP(SUM(LOG(1.0-x))) FROM #foo
谢谢 MikeP。 :)
$P(A+B+C) = 1 - 不是(A) \cdot 不是(B) \cdot 不是(C)$ 怎么样?
当两个事件A和B不互斥时,A或B发生的概率为: P(A 或 B) = P(A) + P(B) - P(A 和 B)
对于我的问题,它是 f(a,b)=a+b-a*b
现在,如果一个是计算 P(A 或 B 或 C),则必须将该函数的组合链接为 f(c, f(a,b))
有没有一种方法可以在 SQL 中高效地做到这一点,当有很多行要汇总时不使用游标?
更新
基于@MikeP 的回答的完整答案:
SELECT 1-EXP(SUM(LOG(1.0-x))) FROM #foo
谢谢 MikeP。 :)
$P(A+B+C) = 1 - 不是(A) \cdot 不是(B) \cdot 不是(C)$ 怎么样?