1

SQLでいくつかの統計を作成する式を実行していますが、作業中のクエリを改善する方法がわかりません...

あなたが私をよりよく理解できるように私はsqlfiddleを作りました

したがって、3つのテーブルがあり、インデックスを変更する式を解く必要があります。

i j
---
1 1
1 2
1 3
2 1
2 2
2 3
3 1
3 2
3 3

次に、平方根とパウを行います。結果をテーブルに入れたいのですが、これらの長いクエリをすべて1つに一般化する方法がわかりません...

4

1 に答える 1

2

これには2、3CROSS JOIN秒必要なようです。

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;

(これを含めるようにフィドルを変更しました。提供していただきありがとうございます!)

しかし、あなたの全体的なデザインは私には少し疑わしいです。正確に何を達成しようとしていますか?

于 2012-11-16T16:46:21.803 に答える