我似乎遇到了我的SQL的最后一块麻烦。 当在我的SQL NULL中出现使用滚动功能实现组时。如何修改NULL以便在此聚合SQL中用TOTAL替换它?Rollup函数 - 替换NULL
Current table returned
Name Activate Deactivate
Max 5 2
TAX 12 5
NULL 17 8
select
case
when (upper(m.email) like '%max.com') then 'MAX'
when (upper(m.email) like '%tax.com') then 'TAX'
else 'OTHER'
end Name,
SUM(case when substring(convert(varchar(8),n.created_on,112),1,6) = '201209' then 1 else 0 end) 'Activated',
SUM(case when substring(convert(varchar(8),m.LastLockoutDate,112),1,6)='201209' then 1 else 0 end) 'Deactivated'
from membership.user_details d
inner join membership.aspnet_membership m
on m.userid = d.userid
inner join membership.user_notes n
on n.userid = d.userid
and n.CREATED_ON = (select min(created_on)
from membership.user_notes
where userid = n.userid
and note = 'received.')
where approved = 1
group by case when (upper(m.email) like '%max.com') then 'MAX'
when (upper(m.email) like '%tax.com') then 'TAX'
else 'OTHER' end
with RollUp
我真的在未来的时候,像上面那样为Total做了案例...花了一段时间让我在昨天晚上想到它。感谢您的帮助bluefeet!先生,好日子! – user1880670 2013-03-14 13:57:48
唯一的技巧是'当名称为空的情况下'总'其他名称结束名称' – guneysus 2015-02-14 00:46:00
@guneysus我不完全确定你为什么投票正确的答案。我的回答包括你说的“诡计”。 – Taryn 2015-02-14 01:44:30