Oracle函数
1. lower(char) 转小写
2. upper(char) 转大写
3. length(char)
4. substr(str,i,len) 在str中从第i个字符开始取len的字符组成的新串(下标从1开始)
5. 数学函数
round(num,n) 四舍五入num到小数点后n位,不指定n表示整数,n为负数表示小数点前n位
trunc(num,n) 数据截取到小数点后n位,不指定n表示直接舍弃小数,n为负数表示小数点前n位
floor(num) 对num向下取整
ceil(num) 对 num 向上取整
6. 日期函数
sysdate 返回系统时间
date数据可以进行加减运算,单位为天
完整日期与时间的转换 to_date('2010-2-8 12:08:09','yyyy-mm-dd hh:mi:ss')
如果执行selectto_date('11:08:09','hh:mi:ss')-1 from dual;返回系统上个月最后一天的日期+指定的时间,假设现在是2011-3-25,则返回 2011-2-2811:08:09
To_char() 可以将日期按照指定的格式显示
To_date() 通常是将字符串(非日期数据类型)转换成需要的日期格式
7. 数字格式化 to_char(num,’数字格式’)
其中数字格式包括
‘L999.99’本地货币符号
‘$999.99’ 美元
‘C999.99’ 国际货币
9 表示显示数字,并忽略前面的数字
0 表示显示数字,不足用0补齐
小数点后有几个数字表示精确到几位
数字格式中,小数点后面有几个数字0或者9,就显示多少位,不足用0补齐
8. oracle 支持数据隐形转换
9. 系统函数
列举几个常用的
SQL> select sys_context('userenv','db_name') AS "当前 数据库名称" from dual;
当前 数据库名称
---------------------------------------------------------------------
orcl
SQL> select sys_context('userenv','language') AS "字符集" from dual;
字符集
---------------------------------------------------------------------
SIMPLIFIED CHINESE_CHINA.ZHS16GBK
SQL> select sys_context('userenv','terminal') AS "当前会话用户对应的终端标识符" from dual;
当前会话用户对应的终端标识符
---------------------------------------------------------------------
LVSHENGCHAO
SQL> select sys_context('userenv','nls_date_format') AS "当前会话用户对应的日期格式" from dual;
当前会话用户对应的日期格式
---------------------------------------------------------------------
DD-MON-RR
SQL> select sys_context('userenv','session_user') AS "当前会话用户对应的数据库用户名" from dual;
当前会话用户对应的数据库用户名
---------------------------------------------------------------------
SCOTT
SQL> select sys_context('userenv','current_schema') AS "当前会话用户对应的默认方案名" from dual;
当前会话用户对应的默认方案名
---------------------------------------------------------------------
SCOTT
SQL> select sys_context('userenv','host') AS "数据库所在主机名称" from dual;
数据库所在主机名称
---------------------------------------------------------------------
WORKGROUP\LVSHENGCHAO |