2011-10-20 12 views
0

同じカラム名を持つ2つのテーブルがあります。両方のテーブルの特定の条件に対してoprIdカラム値を追加する必要があります。複数のテーブルの複数のカラムを1つのカラムに追加する

表1

something oprId 

abc   1 
qwe   2 

表2

something oprId 

abc   2 
qwe   5 

結果がなければならない

oprId 
3 
7 
+0

質問の重要な部分を除外したと思います。 3と7はどこから来たのですか? –

+0

これは、oprId 1 + 2と2 + 5の和である必要があります。 – Naveen

+0

Ok。だからあなたは 'xyz'を' abc'に参加させ、 'ghj'を' qwe'に参加させますか?それらの値はクエリのパラメータですか? –

答えて

1
declare @T1 table (something varchar(3), oprId int) 
declare @T2 table (something varchar(3), oprId int) 

insert into @T1 values ('abc', 1),('qwe', 2) 
insert into @T2 values ('abc', 2),('qwe', 5) 

select T1.oprId+T2.oprId as oprId 
from @T1 as T1 
    inner join @T2 as T2 
    on T1.something = T2.something 

結果:

oprId 
------ 
3 
7 
0
SELECT ISNULL(A.something,B.something) Something, 
     ISNULL(A.oprId,0)ÍSNULL(B.oprId,0) oprId 
FROM Table1 A 
FULL JOIN Table2 B 
ON A.something = B.something