读书人

sql求大神解决解决方法

发布时间: 2013-07-16 22:38:05 作者: rapoo

sql求大神解决

with A_CODE as
(select 'JACK' namea, '2' a, '1' b from dual
union all
select 'JACK' namea, '3' a, '2' b from dual
union all
select 'JACK' namea, '1' a, '3' b from dual
union all
select 'TOM' namea, '1' a, '1' b from dual
union all
select 'TOM' namea, '2' a, '2' b from dual
union all
select 'TOM' namea, '4' a, '3' b from dual
union all
select 'SAM' namea, '2' a, '1' b from dual
union all
select 'SAM' namea, '2' a, '2' b from dual)


根据namea分组 求a/b 的值分别在0-1和1-2的列count值 plsql SQL
[解决办法]
这样?
with A_CODE as
(select 'JACK' namea, '2' a, '1' b
from dual
union all
select 'JACK' namea, '3' a, '2' b
from dual
union all
select 'JACK' namea, '1' a, '3' b
from dual
union all
select 'TOM' namea, '1' a, '1' b
from dual
union all
select 'TOM' namea, '2' a, '2' b
from dual
union all
select 'TOM' namea, '4' a, '3' b
from dual
union all
select 'SAM' namea, '2' a, '1' b
from dual


union all
select 'SAM' namea, '2' a, '2' b from dual)
select namea,
sum(case
when a between 0 and 1 then
1
else
0
end) a,
sum(case
when b between 1 and 2 then
1
else
0
end) b
from a_code
group by namea;

读书人网 >oracle

热点推荐