-3

2 つの異なる結果を返す 2 つのクエリがあり、1 つは return ex#1 return で、2 つ目は return ex#2 です。

例#1

PartyID    PartyName    TotalMain 
  1            A            1
  2            B            1

例2

PartyID    PartyName      TotalSub
  1            A              1
  3            C              1

そして結果が欲しい

 PartyID   PartyName       TotalMain             TotalSub
  1           A                 1                    1
  2           B                 1                    0
  3           C                 0                    1       
4

2 に答える 2

1
;with sample as 
(
SELECT 
e1.PartyID as partyid
,e1.PartyName as partyname
,e1.totalmain AS TotalMain
,0 AS TotalSub
From table1 e1
UNION ALL
SELECT 
e2.PartyID
,e2.PartyName
,0 AS TotalMain
,e2.totalsub AS TotalSub
From table2 e2
)
SELECT
partyid
,MAX(partyname) as partyname
,MAX(totalmain) as totalmain
,MAX(totalsub) as totalsub
from sample
GROUP BY
partyid
于 2013-05-16T14:27:01.207 に答える