with spends as (
select CardCode, SUM(DocTotal) as spend
from DB1.dbo.ORDR
where DocDate>'2016-05-01'
group by CardCode
), itops as (
select CardCode, COUNT(*) as itops
from DB1.dbo.OOPR
where Status='O'
group by CardCode
), connectops as (
select U_Lnk_CardCode, COUNT(*) as connectops
from DB2.dbo.OOPR
join DB2.dbo.OCRD on OCRD.CardCode = OOPR.CardCode
where Status='O'
group by U_Lnk_CardCode
)
select ZipCode, CASE when CardType='C' then 'Customer' when CardType = 'S' then 'Supplier' when CardType='L' then 'Lead' else 'Unknown' end as customertype ,