積結合ビューの作成¶
積結合ビューは、複数の入力ビューに共通で存在する行を選択する積結合操作を実行します。各入力ビューは、互いに他のデータベースに属していてもかまいません。
たとえば、以下の内容を持つ 3 つのビューがあるとします。
View_A |
|
---|---|
A |
B |
1 |
a |
2 |
b |
4 |
d |
View_B |
|
---|---|
A |
B |
1 |
a |
2 |
b |
6 |
f |
View_C |
|
---|---|
A |
B |
2 |
b |
5 |
e |
6 |
f |
「View_A」、「View_B」、および「View_C」から積結合ビューを作成し、この新しいビューにクエリを実行すると、以下の結果が得られます。
View_A Intersect View_B Intersect View_C |
|
---|---|
A |
B |
2 |
b |
このビューにクエリを実行した結果は、3 つの入力ビューに共通で存在する行です。
新しい積結合ビューを作成するウィザードは、和結合ビューのウィザードとほとんど同じです (「 和結合ビューの作成 」を参照)。
積結合ビューを作成するには、[File] > [New] メニューで [Intersect] をクリックするか、[Server Explorer] で右クリックして [New] メニューで [Intersect] をクリックします。
[Intersect view] ダイアログが開き、[Server Explorer] で現在選択している 1 つまたは複数のビューが追加されます。さらにビューを追加するには、[Model] タブをクリックして、追加するビューを [Server Explorer] からこのタブにドラッグします。
重要
積結合ビューのすべての入力ビューは、フィールド数が同じであることが必要です。
[Intersect view] ダイアログには、以下の 6 つのタブがあります。
Model: 入力ビューをこのタブにドラッグして、それらのフィールドを関連付けます。同じ名前のフィールドはウィザードによって自動的に関連付けられますが、それ以外のフィールドは手動で関連付ける必要があります。
入力ビューの すべて のフィールド間にアソシエーションを追加する必要があります。
[View order] ボックスで、積結合の実行順序を指定する必要があります。ビューの順序はクエリの結果に影響しませんが、そのパフォーマンスには大きく影響することがあります。
たとえば、ビューの順序が
View_a ∩ View_b ∩ View_c
であれば、まずView_a
とView_b
の積結合が実行され、その中間結果とView_c
の積結合が実行されます。ビューの順序が
View_a ∩ (View_b ∩ View_c)
であれば、まずView_b
とView_c
の積結合が実行され、その中間結果とView_a
の積結合が実行されます。ビューの [Model] タブで、「ビューパラメータ」を追加できます。ビューパラメータの説明と、これを使用するために必要なルールについては、「 派生ビューのパラメータ 」を参照してください。
Associations: フィールド間のアソシエーションのリストが表示されます。アソシエーションを削除するには をクリックします。
Where Conditions: ビューの定義に WHERE 条件を追加できます。
Group By: ビューに GROUP BY フィールドを追加できます。
Output: ビューの出力を構成できます。具体的には、ビューとそのフィールドの名前の変更、派生属性の追加などができます。
Metadata: 新しいビューの格納先フォルダと説明を定義できます。
[Where Conditions]、[Group By]、[Output]、および [Metadata] の各タブの動作は [Union view] ダイアログの場合と同じです。使用方法の詳細については、「 和結合ビューの作成 」を参照してください。