私は参加する必要のあるデータを2セット持っていますが、データの品質があまり良くないため追加の問題があります。SSISが一致しませんJoin
2つのデータセットは、通話(通話)と通信(通話について作成されたレコード)です。彼らはそれぞれcall_idとcomm_idというIDを持っています。通信レコードには、結合を実行するcall_idもあります。問題は、データ収集システムが正しく機能していないことと、特定の通話に一致できない多数の通信があることです。すべての通話が通信を生成するわけではありません。
毎日、分析を実行するために結合リストを作成する必要があります。
- ちょうど呼び出し、
- だけで途切れ、
- リンクCOMMとコール: 問題は、リンクの一部の不足のために、私は3つの異なる行型を得ることです。
私がしたいことは、与えられた日付の "Just Comm"行のすべての行に対して、同じ日付の "Just Call"行を削除する必要があります。私はコールから値を必要としない、私はちょうど起こったコールを知る必要があります。私がこれを行うならば、すべての "just comms"が "just call"行を削除し、commを作成した呼び出しが知る必要があるので、正しい行数で終了します。
私の問題は、SSISでこれを行う方法です。私は、私が必要とするすべてのデータを含んでいる私のデータセットを持っていて、上で述べた3つの行タイプが混在している点に着いています。 「Just Call」の行を削除するプロセスをどのように推薦しますか?
ここでの最初のステップは、すでに私が行ったことです。コミュニケーションとコールの完全な外部結合により、3種類の行がすべて含まれているデータセットが生成されます。 where句は、 "call and comm"の行を削除します。 ビューを使用する2番目のクエリは、私が望むことをしません。 私は次のコメントでさらに説明します... –
私は比類のない通話と通話記録を取りたいと思います。 通話記録を開始し、同じ日の通話記録と一致するリストに移動します。 各通信レコードは1回のみ使用してください。 コールレコードが一致する日付の未使用の通信を見つけることができない場合、それはヌルのままでなければなりません... –
コールレコード(不一致の通信レコードの数まで)を無作為にクロスアウトする場合 - それは残るべきですか?あなたにはどんな価値がありますか?カウント以上に興味がありますか?そうでない場合は、単に別のクエリでそれらを数えてみませんか? – Tomalak