Sql Teradata乘以聚合中的百分比
我正在试着做一个彻底的乘法运算。我将以棒球为例 样本表Sql Teradata乘以聚合中的百分比,sql,aggregate,teradata,multiplication,Sql,Aggregate,Teradata,Multiplication,我正在试着做一个彻底的乘法运算。我将以棒球为例 样本表 team player battingavg 1-battingavg = nohitavg 1 A 0.123 0.877 1 B 0.144 0.856 1 C 0.210 0.790 2 E 0.142 0.858 2 F 0.231
team player battingavg 1-battingavg = nohitavg
1 A 0.123 0.877
1 B 0.144 0.856
1 C 0.210 0.790
2 E 0.142 0.858
2 F 0.231 0.769
2 G 0.125 0.875
我想用乘法求出无命中的总概率
对于团队1=(0.877)*(0.856)*(0.790)=没有命中的概率
对于第2组=(0.858)*(0.769)*(0.875)=没有命中的概率
1-未命中概率=至少命中1次的概率
SELECT team
, SOMEFUNCTION(nohitavg) as probofnohit
FROM table
GROUP BY team
期望输出
team probofnohit
1 0.593
2 0.577
从数学上讲,乘积(nohitavg)与EXP(SUM(LN(nohitavg))相同,但要注意这是基于FLOAD算术(15位精度),您可以在TD14中添加一个铸造编号(38位):
EXP(SUM(CAST(LN(nohitavg) AS NUMBER))))