oracle中的一些函数笔记
replace函数
replace(最长的字符串,被替换的字符串,替换字符串)
数学函数
round(n,[m]) 保留m位总共n位长度的数,采用四舍五入的方式。
trunc(n,[m])截取数字,不写是直接截取到整数位。
mod(m,n)取模函数
floor(n)小于等于n的最大函数
ceil(n)大于等于n的最大数
时间函数
select * from emp where sysdate > add_date(hiredate,8);
last_day 返回指定日期所在月份的最后一天。
to_char格式化函数
转了一篇专门讲这个的博客
http://www.cnblogs.com/reborter/archive/2008/11/28/1343195.html
sys_context:
select
SYS_CONTEXT('USERENV','TERMINAL') terminal,
SYS_CONTEXT('USERENV','LANGUAGE') language,
SYS_CONTEXT('USERENV','SESSIONID') sessionid,
SYS_CONTEXT('USERENV','INSTANCE') instance,
SYS_CONTEXT('USERENV','ENTRYID') entryid,
SYS_CONTEXT('USERENV','ISDBA') isdba,
SYS_CONTEXT('USERENV','NLS_TERRITORY') nls_territory,
SYS_CONTEXT('USERENV','NLS_CURRENCY') nls_currency,
SYS_CONTEXT('USERENV','NLS_CALENDAR') nls_calendar,
SYS_CONTEXT('USERENV','NLS_DATE_FORMAT') nls_date_format,
SYS_CONTEXT('USERENV','NLS_DATE_LANGUAGE') nls_date_language,
SYS_CONTEXT('USERENV','NLS_SORT') nls_sort,
SYS_CONTEXT('USERENV','CURRENT_USER') current_user,
SYS_CONTEXT('USERENV','CURRENT_USERID') current_userid,
SYS_CONTEXT('USERENV','SESSION_USER') session_user,
SYS_CONTEXT('USERENV','SESSION_USERID') session_userid,
SYS_CONTEXT('USERENV','PROXY_USER') proxy_user,
SYS_CONTEXT('USERENV','PROXY_USERID') proxy_userid,
SYS_CONTEXT('USERENV','DB_DOMAIN') db_domain,
SYS_CONTEXT('USERENV','DB_NAME') db_name,
SYS_CONTEXT('USERENV','HOST') host,
SYS_CONTEXT('USERENV','OS_USER') os_user,
SYS_CONTEXT('USERENV','EXTERNAL_NAME') external_name,
SYS_CONTEXT('USERENV','IP_ADDRESS') ip_address,
SYS_CONTEXT('USERENV','NETWORK_PROTOCOL') network_protocol,
SYS_CONTEXT('USERENV','BG_JOB_ID') bg_job_id,
SYS_CONTEXT('USERENV','FG_JOB_ID') fg_job_id,
SYS_CONTEXT('USERENV','AUTHENTICATION_TYPE') authentication_type,S
YS_CONTEXT('USERENV','AUTHENTICATION_DATA') authentication_data,
from dual;
其中几个比较重要的参数:
1.terminal 当前会话客户所对应的终端标识符
2.language 语言
3.db_name 当前数据库名称
4.nls_date_format 当前会话客户所对应的日期格式
5.session_user 当前会话客户所对应的数据库用户名
6.current_schema 当前会话客户所对应的默认方案名
7.host 返回数据库所在主机的名称