可能重複:
How to combine these two SQL statements?如何將這2個SELECT合併爲一個?
我有2個SQL查詢。他們根據變量等於表中的CMSUID
或CASUID
值獲得計數。否則,他們是完全一樣的。我怎樣才能將它們組合成一個查詢,也許使用CASE
語句。
select @cntCM_CNF = count(distinct(c.ID_Case))
from dbo.Cases c
join dbo.vew_CasePersonnelSystemIDs vcps on c.ID_Case = vcps.ID_Case
join hearings h on c.ID_Case = h.ID_Case
where vcps.CMSUID = @nSUID
and h.HearingDate > getdate()
and h.OnCalendar = 1 and h.Scheduled = 1
and dbo.fn_HearingConfirmedNoHOs(h.ID_Hearing) < 2
select @cntCC_CNF = count(distinct(c.ID_Case))
from dbo.Cases c
join dbo.vew_CasePersonnelSystemIDs vcps on c.ID_Case = vcps.ID_Case
join hearings h on c.ID_Case = h.ID_Case
where vcps.CASUID = @nSUID
and h.HearingDate > getdate()
and h.OnCalendar = 1 and h.Scheduled = 1
and dbo.fn_HearingConfirmedNoHOs(h.ID_Hearing) < 2
我不知道如何將它們合併,因爲結果是不同項目的計數。不知道如何做到這一點。
你不應該試試。 'WHERE'子句是不同的,這意味着你將無法確定組合查詢會導致正確的數據被聚合和返回。 – Oded
不錯的發現@marc_s ... – Oded
@marc_s它是相似的 - 事實上,我問過它。但是,解決方案並不相同 – AngryHacker