|
你现在EXCEL玩得很溜啊?
ORACLE的LOG会有误差,ROUND 4 位以内都得不到正确结果。
改用POWER:
SELECT SUM(d)+2
FROM (SELECT LEVEL L FROM DUAL CONNECT BY LEVEL<=9999)
,(SELECT LEVEL+1 D,POWER(2,LEVEL) P1,POWER(2,LEVEL+1)-1 P2 FROM DUAL CONNECT BY LEVEL<=LOG(2,9999))
WHERE l BETWEEN p1 and p2
; |
|