SQL Error: ORA-01476: divisor is equal to zero
774420Jul 7 2011 — edited Jul 7 2011Hi I have a strange error
if i run the following query i am getting the result.
select *
from (SELECT (((BV.FBASEVOLTAGE - (FB.FMAGNITUDE_RESULT * BV.FBASEVOLTAGE))/ BV.FBASEVOLTAGE)*100) as PER_REG_VOLT,BS.IUBUSNO
FROM GN
JOIN GM
ON GM.IELEMENT_MAP_ID= GN.IELEMENT_MAP_ID
JOIN BS
ON GM.NPS_ELEMENT_ID = BS.IUBUSID
AND GM.NPS_ELEMENT_TYPE = 101
JOIN CONFIG_BASE_VOLTAGE BV
ON BS.IBASEVOLTAGEID = BV.IBASEVOLTAGEID
JOIN FACT_BUS FB
ON FB.IBUS_NO = BS.IUBUSID
AND FB.IPS_CASE_ID = GN.IPS_CASE_ID
WHERE BV.FBASEVOLTAGE < 11
AND GN.IPS_CASE_ID = 1637 ) a
PER_REG_VOLT IUBUSNO
---------------------- ----------------------
100 4073
99.999 4093
99.999 4091
99.999 4089
99.999 4068
99.999 4079
99.999 4071
99.999 4078
0 4084
99.999 4067
99.999 4077
99.999 4087
99.999 4075
99.999 4094
99.999 4090
99.999 4076
99.999 4086
99.999 4083
99.999 4095
99.999 4092
99.999 4082
99.999 4074
99.999 4085
99.999 4070
100 4072
99.999 4069
99.999 4080
99.999 4096
99.999 4066
99.999 4088
99.999 4081
But, When i add a where clause and run the query i am getting divisior is equal to zero.
select *
from (SELECT (((BV.FBASEVOLTAGE - (FB.FMAGNITUDE_RESULT * BV.FBASEVOLTAGE))/ BV.FBASEVOLTAGE)*100) as PER_REG_VOLT,BS.IUBUSNO
FROM GN
JOIN GM
ON GM.IELEMENT_MAP_ID= GN.IELEMENT_MAP_ID
JOIN BS
ON GM.NPS_ELEMENT_ID = BS.IUBUSID
AND GM.NPS_ELEMENT_TYPE = 101
JOIN CONFIG_BASE_VOLTAGE BV
ON BS.IBASEVOLTAGEID = BV.IBASEVOLTAGEID
JOIN FACT_BUS FB
ON FB.IBUS_NO = BS.IUBUSID
AND FB.IPS_CASE_ID = GN.IPS_CASE_ID
WHERE BV.FBASEVOLTAGE < 11
AND GN.IPS_CASE_ID = 1637 ) a where PER_REG_VOLT < 80