2017-10-25 11 views
0

したがって、Oracle DBをMongo DBに移動します。私はWorkと呼ばれるコレクションを持っています。そこにはすべての映画、絵画、残りのものが保管されています。Pentahoケトルの行を融合する方法

"workCS": { 
    "casting": [ 
     { 
      "authority": ObjectID("anID"), 
      "role": [ 
       "actor", 
       "realisator" 
      ] 
     } 
    ], 
    [ 
     { 
      "authority": ObjectID("otherID"), 
      "role": [ 
       "actor" 
      ] 
     } 
    ] 
} 
:私も今まで1つの作業と相互作用し、すべての人が、私は当局との間のリンクを作成しようとしている(などの俳優、画家、)であり、作品集の内側にこのように動作する権限と呼ばれるコレクションを持っています

ペンタホケトルでmanyToManyジョイントを作る方法を知っているので、コレクションの基本構造を作ることに問題はありませんでした。しかし、私は、鋳造テーブル内のロールテーブルを作成する方法を見つけると、このようなもので終わることができない:私たちは私たちのデータに行う後処理とインコヒーレントである

"workCS": { 
    "casting": [ 
     { 
      "authority": ObjectID("anID"), 
      "role": [ 
       "actor" 
      ] 
     } 
    ], 
    [ 
     { 
      "authority": ObjectID("anID"), 
      "role": [ 
       "realisator" 
      ] 
     } 
    ], 
    [ 
     { 
      "authority": ObjectID("otherID"), 
      "role": [ 
       "actor" 
      ] 
     } 
    ] 
} 

を。

"id"; "LastName"; "FirstName"; "Role"; 
1; "Radcliffe"; "Daniel"; "Actor"; 
1; "Radcliffe"; "Daniel"; "Writer"; 
2; "Grint"; "Rupert"; "Actor"; 

は、Pentahoの中の行を融合させる方法はありますので、この例では、このように表示されます。

私は私のSQLは、Oracle DBからデータを取得するために作る、私はこのようなものがありますか?

"id"; "LastName"; "FirstName"; "Roles"; 
1; "Radcliffe"; "Daniel"; "Actor, Writer"; 
2; "Grint"; "Rupert"; "Actor"; 

答えて

0

あなたが探しているのステップは、役割のConcatenate strings separated by ,Group by、としてAggregationタイプです。

Group fieldではキーとして他の3つの列を指定する必要があります。実際のキーはAuthority_idであるにもかかわらずグループフィールドとして指定しないと消えます。

本当にたくさんの行がある場合を除き、Group byを使用し、データがAuthority_idでソートされていることを確認してください(名前によっても自動的にソートされます)。Memory Group byも使用してください。

enter image description here

関連する問題