私はいくつかの選択を行っており、オーバーラップを計算したいと考えています。例:SQLはユニオン内のアイテムの多重度を選択します
SELECT id FROM foo WHERE ...
SELECT id FROM bar WHERE ...
SELECT id FROM baz WHERE ...
これらのクエリをそれぞれa、b、およびcと呼びます。 aが(1,2,3,4,5)を与え、bが(1,3,5)を与え、cが(4,5,6)を与えると仮定しよう。私はこれらの和集合をとり、多様性を数えたいと思う。上記の例では、私が探している結果は
id | multiplicity
-----------------
1 | 2
2 | 1
3 | 2
4 | 2
5 | 3
6 | 1
です。これはどのように1つのクエリでMySQL5で行いますか? (a、b、およびcの部分は、プレーン・セレクトまたはストアド・プロシージャとすることができます)。
あなたが固定されているかだが働くと考えていますテーブルの量、エントリ、またはそれらは異なる可能性がありますか?不足しているIDのそれぞれを0に置き換えて、第1、第2、第3の要素などを合計することができます... – Andrew
私は多重度が好きです... – Ben