我正在做一个公式来在 SQL 中进行一些统计,但我不知道如何改进我正在处理的查询......
所以我有3个表,我需要解决一个改变索引的公式,i,j ...
i j
---
1 1
1 2
1 3
2 1
2 2
2 3
3 1
3 2
3 3
然后做一些 sqrt 和 pow。我想要一个表中的结果,但我不知道如何将所有这些长查询概括为一个......
我正在做一个公式来在 SQL 中进行一些统计,但我不知道如何改进我正在处理的查询......
所以我有3个表,我需要解决一个改变索引的公式,i,j ...
i j
---
1 1
1 2
1 3
2 1
2 2
2 3
3 1
3 2
3 3
然后做一些 sqrt 和 pow。我想要一个表中的结果,但我不知道如何将所有这些长查询概括为一个......
这似乎只需要几个CROSS JOIN
s:
SELECT ((N.n*M1.m)-(S1.s*S2.s)) /
(SQRT((N.n*M2.m)-(pow(S1.s,2))) * SQRT((N.n*M3.m)-(pow(S2.s,2))))
FROM N
CROSS JOIN sums as S1
CROSS JOIN sums as S2
JOIN mults as M1
ON M1.i = S1.i
AND M1.j = S2.i
JOIN mults as M2
ON M2.i = S1.i
AND M2.j = S1.i
JOIN mults as M3
ON M3.i = S2.i
AND M3.j = S2.i;
(我已经修改了Fiddle以包含这个。感谢您提供一个!)。
但是,您的整体设计对我来说有点可疑;你到底想完成什么?