Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/80.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
有限集的超几何分布有SQL解决方案吗?_Sql_Sql Server_Distribution_Factorial_Hyper - Fatal编程技术网

有限集的超几何分布有SQL解决方案吗?

有限集的超几何分布有SQL解决方案吗?,sql,sql-server,distribution,factorial,hyper,Sql,Sql Server,Distribution,Factorial,Hyper,我正在浏览Microsoft Excel中与HYPGEOM.DIST相当的SQL实现。我已经探索了一个从1到N(1…N)分布的阶乘表的种子设定选项,但我正在寻找其他选项 参考Excel功能: 您可以使用您最熟悉的任何技术,为您需要的任何范围预先计算阶乘,并将它们存储在单独的表中 其余的,我想,应该是微不足道的 编辑:仔细想想,我不确定您打算如何超越已经遇到的限制170!~=7.25741562E+307,根据数据,可存储为浮点的最大值为1.79E+308。SQL Server似乎并不真正适合您

我正在浏览Microsoft Excel中与HYPGEOM.DIST相当的SQL实现。我已经探索了一个从1到N(1…N)分布的阶乘表的种子设定选项,但我正在寻找其他选项

参考Excel功能:

您可以使用您最熟悉的任何技术,为您需要的任何范围预先计算阶乘,并将它们存储在单独的表中

其余的,我想,应该是微不足道的

编辑:仔细想想,我不确定您打算如何超越已经遇到的限制<代码>170!~=7.25741562E+307,根据数据,可存储为浮点的最大值为1.79E+308。SQL Server似乎并不真正适合您的任务;您必须在其他地方寻找处理(和存储)大量数据的系统


也许可以使用对数而不是实际值进行计算——考虑到原始形式实际上是对数,这一点尤其诱人。然而,这需要将所有这些公式改写成对数形式。这涉及到相当多的数学知识,而我个人的知识甚至不足以判断这是否真的可以实现。但这并不意味着它会阻止您尝试:)

请提供示例数据和所需结果,如问题中的文本表。你还应该解释一下“超几何分布”的含义。这里有一个小贴士可以帮你谢谢罗杰!伟大的建议;这实际上也是我的预感,但我担心的是,所有这些数据都会带来痛苦(在我们的案例中,每次部署),在什么时候停止(100万-如果用户想要使用200万的人口规模怎么办?)?是的,罗杰,使用对数是计算此类表达式的常见方法,甚至还有一个特殊的函数(Euler Gamma函数的对数),有关详细信息,请参阅details@RogerWolf最终我们在SQL之外进行计算!谢谢你的帮助。你的答案是最合适的。
Given:

x = sample_s
n = number_sample
M = population_s
N = number_pop