电脑技术学习

Oracle函数集锦

dn001

  7、SYS_EXTRACT_UTC(timestamp) 返回标准通用时间即格林威治时间。

  例如:SELECT SYS_EXTRACT_UTC(current_timestamp) FROM DUAL;

  8、SYS_TYPEID(object_type) 返回对象类型对应的id。

  例如:这个这个,没有建立过自定义对象,咋做示例?

  9、UID 返回一个唯一标识当前数据库用户的整数。

  例如:SELECT UID FROM DUAL;

  10、USER 返回当前session用户

  例如:SELECT USER FROM DUAL;

  11、USERENV(c) 该函数用来返回当前session的信息,据oracle文档的说明,userenv是为了保持向下兼容的遗留函数。oracle公司推荐你使用sys_context函数调用USERENV命名空间来获取相关信息,所以大家了解下就行了。

  例如:SELECT USERENV('LANGUAGE') FROM DUAL;

  12、VSIZE(c) 返回c的字节数。

  例如:SELECT VSIZE('abc中华') FROM DUAL;

  注:N表示数字型,C表示字符型,D表示日期型,[]表示内中参数可被忽略,fmt表示格式。

  单值函数在查询中返回单个值,可被应用到select,where子句,start with以及connect by 子句和having子句。

  (一).数值型函数(Number Functions)

  数值型函数输入数字型参数并返回数值型的值。多数该类函数的返回值支持38位小数点,诸如:COS, COSH, EXP, LN, LOG, SIN, SINH, SQRT, TAN, and TANH 支持36位小数点。ACOS, ASIN, ATAN, and ATAN2支持30位小数点。

  1、ABS(n) 返回数字的绝对值

  例如:SELECT ABS(-1000000.01) FROM DUAL;

  2、COS(n) 返回n的余弦值

  例如:SELECT COS(-2) FROM DUAL;

  3、ACOS(n) 反余弦函数,n between -1 and 1,返回值between 0 and pi。

  例如:SELECT ACOS(0.9) FROM DUAL;

  4、BITAND(n1,n2) 位与运算,这个太有意思了,虽然没想到可能用到哪里,详细说明一下:

  假设3,9做位与运算,3的二进制形式为:0011,9的二进制形式为:1001,则结果是0001,转换成10进制数为1。

  例如:SELECT BITAND(3,9) FROM DUAL;

  5、CEIL(n) 返回大于或等于n的最小的整数值

  例如:SELECT ceil(18.2) FROM DUAL;

  考你一下,猜猜ceil(-18.2)的值会是什么呢

  6、FLOOR(n) 返回小于等于n的最大整数值

  例如:SELECT FLOOR(2.2) FROM DUAL;

  再猜猜floor(-2.2)的值会是什么呢

  7、BIN_TO_NUM(n1,n2,....n) 二进制转向十进制

  例如:SELECT BIN_TO_NUM(1),BIN_TO_NUM(1,0),BIN_TO_NUM(1,1) FROM DUAL;

  8、SIN(n) 返回n的正玄值,n为弧度。

  例如:SELECT SIN(10) FROM DUAL;

  9、SINH(n) 返回n的双曲正玄值,n为弧度。

  例如:SELECT SINH(10) FROM DUAL;

  10、ASIN(n) 反正玄函数,n between -1 and 1,返回值between pi/2 and -pi/2。

  例如:SELECT ASIN(0.8) FROM DUAL;