What patch level are you running?
There have been a few Tech Alerts regarding NUMBERs and calculation/cast/rounding, you probably run into one of them. Most are fixed, but this is open:
NT3194 Rounding error with casting NUMBER(*) to CHAR/VARCHAR
You might try to avoid the NUMBER by replacing the POWER(b.col2,2) with CAST(b.col2 as DEC(38,2)) * b.col2
Dieter
What patch level are you running?
There have been a few Tech Alerts regarding NUMBERs and calculation/cast/rounding, you probably run into one of them. Most are fixed, but this is open:
NT3194 Rounding error with casting NUMBER(*) to CHAR/VARCHAR
You might try to avoid the NUMBER by replacing the POWER(b.col2,2) with CAST(b.col2 as DEC(38,2)) * b.col2
Dieter