回答編集履歴

1

質問解釈間違いのため、回答訂正

2016/03/07 05:13

投稿

Aeona
Aeona

スコア396

test CHANGED
@@ -1,3 +1,53 @@
1
+ 質問を読み直したところ、質問の意図が違うことが分りました。
2
+
3
+ 「A_cd、B_cdに別のマスタを結合(JOIN)し、それぞれ重複を排除(DISTINCT)して、
4
+
5
+ A_cd分とB_cd分を縦に並べる(UNION)する」でしたね。
6
+
7
+
8
+
9
+ ```SQL
10
+
11
+ SELECT DISTINCT -- Aパート 抽出結果を重複除外
12
+
13
+ [Master_A].[A_Value] AS Val -- B側と同じ項目数、項目名にする
14
+
15
+ FROM [T_sample]
16
+
17
+ LEFT JOIN [Master_A] -- A_cdに対するマスタを結合
18
+
19
+ ON [T_sample].[A_cd] = [Master_A].[A_cd]
20
+
21
+
22
+
23
+ UNION ALL
24
+
25
+ SELECT DISTINCT -- Bパート 抽出結果を重複除外
26
+
27
+ [Master_B].[B_Value] AS Val -- A側と同じ項目数、項目名にする
28
+
29
+ FROM [T_sample]
30
+
31
+ LEFT JOIN [Master_B] -- B_cdに対するマスタを結合
32
+
33
+ ON [T_sample].[B_cd] = [Master_B].[B_cd]
34
+
35
+ ```
36
+
37
+
38
+
39
+ 上記が、訂正版のSQL文です。
40
+
41
+ 以上、ご参考になりますでしょうか?
42
+
43
+
44
+
45
+ ---
46
+
47
+ 以下、訂正前回答
48
+
49
+
50
+
1
51
  「A_cdのマスタ、B_cdのマスタという2つのテーブルを結合する方法は?」
2
52
 
3
53
  という質問でしょうか?
@@ -111,3 +161,5 @@
111
161
  以上、
112
162
 
113
163
  ご参考になりますでしょうか?
164
+
165
+