我看到了全世界最好看的眼睛。 揉眼睛的手还有双眼皮。

SQL和ORACLE函数比较

上一篇 / 下一篇  2008-03-28 16:05:30 / 个人分类:数据库

SQLServer和Oracle是大家经常用到的数据库,在此感谢作者总结出这些常用函数以供大家参考。

数学函数:

 1.绝对值
   S:SELECT abs(-1) value
   O:SELECT abs(-1) value from dual

2.取整(大)
   S:SELECT ceiling(-1.001) value
   O:SELECT ceil(-1.001) value from dual

3.取整(小)
   S:SELECT floor(-1.001) value
   O:SELECT floor(-1.001) value from dual

4.取整(截取)
   S:SELECT cast(-1.002 as int) value
   O:SELECT trunc(-1.002) value from dual

5.四舍五入
   S:SELECT round(1.23456,4) value 1.23460
   O:SELECT round(1.23456,4) value from dual 1.2346

6.e为底的幂
   S:SELECT Exp(1) value 2.7182818284590451
   O:SELECT Exp(1) value from dual 2.71828182

7.取e为底的对数
   S:SELECT log(2.7182818284590451) value 1
   O:SELECT ln(2.7182818284590451) value from dual; 1

8.取10为底对数
   S:SELECT log10(10) value 1
   O:SELECT log(10,10) value from dual; 1

9.取平方
   S:SELECT SQUARE(4) value 16
   O:SELECT power(4,2) value from dual 16

10.取平方根
   S:SELECT SQRT(4) value 2
   O:SELECT SQRT(4) value from dual 2

11.求任意数为底的幂
   S:SELECT power(3,4) value 81
   O:SELECT power(3,4) value from dual 81

12.取随机数
   S:SELECT rand() value
   O:SELECT sys.dbms_random.value(0,1) value from dual;

13.取符号
   S:SELECT sign(-8) value -1
   O:SELECT sign(-8) value from dual -1

14.圆周率
   S:SELECT PI() value 3.1415926535897931
   O:不知道

15.sin,cos,tan 参数都以弧度为单位
   例如:SELECT sin(PI()/2) value 得到1(SQLServer)

16.Asin,Acos,Atan,Atan2 返回弧度

17.弧度角度互换(SQLServer,Oracle不知道)
   DEGREES:弧度-〉角度
   RADIANS:角度-〉弧度

数值间比较:

 18. 求集合最大值
   S:SELECT max(value) value from
   (SELECT 1 value
   union
   SELECT -2 value
   union
   SELECT 4 value
   union
   SELECT 3 value)a

  O:SELECT greatest(1,-2,4,3) value from dual

19. 求集合最小值
   S:SELECT min(value) value from
   (SELECT 1 value
   union
   SELECT -2 value
   union
   SELECT 4 value
   union
   SELECT 3 value)a

  O:SELECT least(1,-2,4,3) value from dual

20.如何处理null值(F2中的null以10代替)
   S:SELECT F1,IsNull(F2,10) value from Tbl
   O:SELECT F1,nvl(F2,10) value from Tbl

21.求字符序号
   S:SELECT ascii('a') value
   O:SELECT ascii('a') value from dual

22.从序号求字符
   S:SELECT char(97) value
   O:SELECT chr(97) value from dual

 

 


TAG: 数据库

 

评分:0

我来说两句

Open Toolbar