2016-12-07 11 views
1

テーブル内のすべてのアイテムの頻度を数えたいと思います。私の出発の表は、このようなものです:SQLを使用したテーブル内のアイテム数

+------+------+ 
| Col1 | Col2 | 
+------+------+ 
| A | Z | 
| B | Y | 
| A | Y | 
+------+------+ 

そして、私は次のような結果を取得したいと思います:私は、最も簡単な方法は、単一を作成するために一緒にすべての列を追加するだろうと考えていた

+------+-------+ 
| Item | Count | 
+------+-------+ 
| A |  2 | 
| B |  1 | 
| Y |  2 | 
| Z |  1 | 
+------+-------+ 

をカラム。これで、COUNTとGROUP BY操作を適用できました。問題は、複数の列を1つの列に追加する方法です。 Vertica DBのテーブルにAprioriアルゴリズムを実装するには、これが必要です。これはアイテム数を取得する最初のステップです。 助けてくれてありがとう。

答えて

1

アンピボットデータカウント

は、このように迅速に助けを

select Item,count(1) 
From 
(
select col1 as Item from yourtable 
union all 
select col2 from yourtable 
) A 
Group by item 
+0

感謝をお試しください!私は単純な方法があることを知っていましたが、私は正しい方法でGoogleを使用するためにばかげていると思います。 – valenzio

関連する問題