私のテーブルの束に基本的なSQL-VIEWを形成するのに助けが必要です。ここでは簡単な概要が..私はClaimDetailテーブルをきたし、それはなどStatusID、BrandID、SalespersonID、のようないくつかのルックアップフィールドを持っているSQLビュー、パフォーマンス、および1対多の関係からのカウント
- だいつものよう
- 、ルックアップフィールドはmasterStatusの、MasterBrandのようなテーブルをマスターするマップ、... {構造:ID、Title}
- また、2つの他の表のコメントとファイルがあります。クレームは複数のコメントと複数のファイルを持つことができます。
- クレームのリストになるダッシュボードを表示する必要があります。私はマスターテーブルからのタイトルとコメント&ファイルの数を表示する必要があります。
このダッシュボードは、特定の詳細に限定されたCustomerタイプのユーザーと、内部ユーザー向けの詳細なビューの2つのビューがあります。顧客ビューは内部ビューのサブセットであると言えます。と は両方 ユーザーのデータをフェッチするためにそれを使用単一vw_Internalビューを作成します。
- オプト#1 -
は、私は2つのオプションを参照してください。 #2オプト
- :vw_Customer INNERが マスターテーブルのJOIN:私は、私は のようなになりますvw_Internalを作成 がお客様のために必要とされるこれらのフィールドをonltと たvw_Customer を作成します。要するに、 の基本vw_Customerを拡張して、 個のフィールドを追加します。
オプション2はスピードとパフォーマンスの観点から理にかなっていますか?オプト#1はシンプルですが、膨大な数のレコードを考慮して、ダッシュボードに含まれない余分なルックアップを少しでも待つ必要はありません。
最後に、私が言及した最後の機能のための方法はありますか?つまり、は、ClaimDetailテーブルと1対多の関係を持つコメントとファイルの数を取得しています。私はちょうどクレームが任意のコメントを持っているかどうかを示すブール値フィールドまたはatleastが必要です(ファイルと同じです) - カウントが0の場合はfalseとなります。この機能によるパフォーマンスへの影響も懸念しています。
ありがとうございます。
ありがとうございます。メインビューとラッパービューを維持するという私の意図は、ロジックを2回複製する必要がないということでした。オプション#1またはオプト#2?パフォーマンスビューポイントと違いがあるかどうか教えてください。 –
サブテーブルの数については、LEFT OUTER JOINパターンに続くものが必要です。> = 0のサブレコード(> = 1でない)があるかもしれないからです。私は両方のクエリが可能になることを願っています。 –
私はKelleyの明確な説明の答えを受け入れるだろうし、他に誰も出てこなかったので:-) –