同比怎么计算(同比环比计算公式)

同比怎么计算
同比环比计算公式据说很多老会计都不知道咋算。
–这是oracle的同比计算函数
CREATE OR REPLACE FUNCTION GET_TBI
(na in number,nb in number) –na为上期数据,nb为当期数据
RETURN number IS
TBI number(13,2);
BEGIN
–同比基础公式*na的符号
if na = 0 then
TBI := 0; –上期为0,同比应为正负无穷,这里计0
else
TBI := 100*(nb/na – 1)*sign(na);
end if;
RETURN(TBI);
END GET_TBI;
–解释一下
na 为上期数据
nb 为本期数据
如果na = 0 那么同比TBI=0
否则TBI := 100*(nb/na – 1)*sign(na);
sign为取na的符号,取值为1,0,-1
–示例1
na = 0
nb = 5217
TBI = 0
–示例2
na = -10
nb = 20
TBI = 100*(20/(-10) – 1)*sign(-10) = 300%
–示例3
na = -10
nb = -20
TBI = 100*((-20)/(-10) – 1)*sign(-10) = -100%
–示例4
na = 20
nb = -10
TBI = 100*((-10)/20 – 1)*sign(20) = -150%

版权声明