2017-09-27 4 views
0

私はRedshiftを使用しており、6個のIDのテーブルを持っています。それぞれのテーブルを交差させたいと思います。複数のテーブルの交差を取得するためのSQL(Redshift)

だから私の最終的な出力は次のようになります。

  • 表1 &表2は、10%の共通IDが
  • 表1 &表3は、50%の共通のID
  • を持っています.... 。
  • .....
  • 表6 &表4は、20%、共通のID
  • Tを有します可能な6 &表5は3%、共通のIDを持っている

私は簡単にデータを取得することができますが、それは同じSQLを繰り返し、多くのだろう、私はすべてのIDとテーブルのいくつかのテーブルを作成しようとしました彼らは入っていますが、私は1つまたは2つのSQLでデータを取得するにはどうしたらいいですか?

答えて

0

あなたはサブクエリでIDによって、これらすべてのテーブルを結合し、その後Table 1 & Table 2 have 10% common IDs

100.0*sum(case when id1 is not null and id2 is not null then 1 end)/count(id1)

として表現されますように(分母として表1の行数を取って)条件付き集計を使用し、フルに試みることができる

+0

ありがとう、それは私が最後にやったことです – ewan123uk

関連する問題