星辰日月00

欲多则心散,心散则志衰,志衰则思不达也!

  博客园 :: 首页 :: 博问 :: 闪存 :: 新随笔 :: 联系 :: 订阅 订阅 :: 管理 ::

根据函数是对一行记录还是多行记录进行操作,SQL函数分为单行函数和多行函数。
其中,单行函数每次只对一行记录进行操作,并得到一行返回结果;多行函数每次
可以对多行记录进行操作,但得到一行返回结果。SQL单行函数主要有5种,
分别为数字函数、字符函数、日期时间函数、转换函数和正则表达式函数。
多行函数也被称为列函数或分组函数,如求平均值函数AVG(x)。
大多数单行函数都可以直接在PL/SQL程序中使用,但多行函数不能在PL/SQL程序中直接使用。
一、数字函数
1.ABS(x)
--x的绝对值。
SELECT ABS(88), ABS(-88) FROM dual;       --88,88
2.ACOS
--反余弦值
SELECT ACOS(1), ACOS(-1) FROM dual        --0,3.1415926
3.ASIN(0.5)
--反正弦值
SELECT ASIN(0.5), ASIN(-0.5) FROM dual;   --0.523598,-0.523598
4.ATAN(5)
--反正切值
SELECT ATAN(5), ATAN(-5) FROM dual;       --1.37340,-1.37340
5.ATAN2(10,2)
--x除以y的反正切值
SELECT ATAN2(0.5), ATAN2(-0.5) FROM dual;
6.BITAND(15,-1) 
--x和y按二进制位进行行与AND操作的值。
SELECT BITAND(15,-1) FROM dual;          --15
7.CEIL(x)
--返回大于或等于x的最小整数
SELECT CEIL(15.3),CEIL(-15.8) FROM dual;     --16,-15
8.COS(x)
--余弦值.
SELECT cos(3.1415926/4), COS(-3.1415926/4) FROM dual;       --0.7071067,0.7071067
9.COSH(x)
--双曲余弦值.
SELECT COSH(1), COSH(-1) FROM dual;        --1.54308,1.54308
10.EXP(x)
--e的x次方。
SELECT EXP(1), EXP(-1) FROM dual;          --2.7182,0.36787
11.FLOOR(x)
--返回小于或等于x的最大整数。
SELECT FLOOR(15.3),FLOOR(-15.8) FROM dual; --15,-16
12.LN(x)
--返回x的自然对数值。
SELECT LN(2.71828183),LN(1) FROM dual;     --1.00000000056689,0
13.LOG(x,y)
--返回以x为底y的对数值。
SELECT LOG(10,10), LOG(2,8) FROM dual;     --1,3
14.MOD(x,y)
--返回x除以y的余数。
SELECT MOD(10,10), MOD(2,8) FROM dual;     --0,2
15.POWER(x,y)
--返回x的y次幂
SELECT POWER(2,3), POWER(10,2) FROM dual;  --8,100
16.ROUND(x[,y])
--返回对x的第y位进行取整的结果。若没有指定y,则对x第0位小数取整。
SELECT ROUND(15.51),ROUND(15.49),ROUND(15.51,1),ROUND(15.51,0),ROUND(15.51,-1) FROM dual;
--16,15,15.5,16,20。
17.SIGN(x)
--若x为负数,则返回-1;若x为正数,则返回1;若x为0,则返回0。
SELECT SIGN(10),SIGN(-10),SIGN(0) FROM dual;                --1,-1,0
18.SIN(x)
--返回x的正弦值。
SELECT SIN(3.1415926/6) FROM dual;     --0.4999
19.SINH(x)
--返回x的双曲正弦值。
SELECT SINH(10),SINH(-10) FROM dual;   --11013.2328,-11013.2328
20.TAN(x)
--正切值。
SELECT TAN(3.1415926/6) FROM dual;     --0.5773
21.TANH(x)
--返回x的双曲正切值。
SELECT TANH(10), TANH(-10) FROM dual;  --0.99999,-0.99999
22.TRUNK(x[,y])
--返回对x的第y位进行截断的结果。若没有指定y,则对x第0位小数截断。
SELECT TRUNC(15.51), TRUNC(15.49), TRUNC(15.51,1),
    TRUNC(15.51,0), TRUNC(15.51,-1) FROM dual;
--15,15,15.5,15,10。

posted on 2012-03-07 11:45  星辰日月00  阅读(518)  评论(0编辑  收藏  举报