有一个表,其中的有两个字段 A,B
A B
-------------------
a 50
b 50
c 50怎么能得到下面这样的数据,就是B中的数量50 除以记录个数3得到整数。
A B
-------------------
a 16
b 16
c 18
A B
-------------------
a 50
b 50
c 50怎么能得到下面这样的数据,就是B中的数量50 除以记录个数3得到整数。
A B
-------------------
a 16
b 16
c 18
select 'a' as a,50 as b from dual
union all
select 'b',50 from dual
union all
select 'c',50 from dual
)
select ta.a,decode(ta.a,zda,zdz-pjz*(gs-1),pjz) zhi
from ta
,(select count(*) gs,max(b) zdz
,floor(max(b)/count(*)) pjz
,max(a) zda
from ta) b