LAST_DAY
返回日期的最后一天
SQL> select to_char(sysdate,'yyyy.mm.dd'),to_char((sysdate)+1,'yyyy.mm.dd') from dual;
TO_CHAR(SY TO_CHAR((S
---------- ----------
2004.05.09 2004.05.10
SQL> select last_day(sysdate) from dual;
LAST_DAY(S
----------
31-5月 -04
LEAST
返回一组表达式中的最小值
SQL> select least('啊','安','天') from dual;
LE
--
啊
LENGTH
返回字符串的长度;
SQL> select name,length(name),addr,length(addr),sal,length(to_char(sal)) from gao.nchar_tst;
NAME LENGTH(NAME) ADDR LENGTH(ADDR) SAL LENGTH(TO_CHAR(SAL))
------ ------------ ---------------- ------------ --------- --------------------
高乾竞 3 北京市海锭区 6 9999.99 7
LENGTHB
与LENGTH()一样,返回字节
LN
返回一个数字的自然对数值
SQL> select ln(1),ln(2),ln(2.7182818) from dual;
LN(1) LN(2) LN(2.7182818)
--------- --------- -------------
0 .69314718 .99999999
LOCALTIMESTAMP
Fmt:该函数用于返回当前会话时区的日期时间。
LOG(n1,n2)
返回一个以n1为底n2的对数
SQL> select log(2,1),log(2,4) from dual;
LOG(2,1) LOG(2,4)
--------- ---------
0 2
LOWER
返回字符串,并将所有的字符小写
SQL> select lower('AaBbCcDd')AaBbCcDd from dual;
AABBCCDD
--------
aabbccdd
LPAD(粘贴字符)
LPAD(粘贴字符)
RPAD 在列的右边粘贴字符
LPAD 在列的左边粘贴字符
SQL> select lpad(rpad('gao',10,'*'),17,'*')from dual;
LPAD(RPAD('GAO',1
-----------------
*******gao*******
不够字符则用*来填满
LTRIM
LTRIM 删除左边出现的字符串
RTRIM 删除右边出现的字符串
SQL> select ltrim(rtrim(' gao qian jing ',' '),' ') from dual;
LTRIM(RTRIM('
-------------
gao qian jing
MAKE_REF
MAX
MIN
MOD(n1,n2)
返回一个n1除以n2的余数,如果数字n为0,则返回结果为m
SQL> select mod(10,3),mod(3,3),mod(2,3) from dual;
MOD(10,3) MOD(3,3) MOD(2,3)
--------- --------- ---------
1 0 2
MONTHS_BETWEEN(date2,date1)
返回date1和date2之间月的数目,如果date1和date2的日的日期都相同,或者都使该月的最后一天,那么将返回一个整数,否则会返回的结果将包含一个分数。给出date2-date1的月份
SQL> select months_between('19-12月-1999','19-3月-1999') mon_between from dual;
MON_BETWEEN
-----------
9
SQL>selectmonths_between(to_date('2000.05.20','yyyy.mm.dd'),to_date('2005.05.20','yyyy.mm.dd')) mon_betw from dual;
MON_BETW
---------
-60
NEW_TIME(date,'this','that')
给出在this时区=other时区的日期和时间
SQL> select to_char(sysdate,'yyyy.mm.dd hh24:mi:ss') bj_time,to_char(new_time
2 (sysdate,'PDT','GMT'),'yyyy.mm.dd hh24:mi:ss') los_angles from dual;
BJ_TIME LOS_ANGLES
------------------- -------------------
2004.05.09 11:05:32 2004.05.09 18:05:32
NEXT_DAY(date,'day')
给出日期date和星期x之后计算下一个星期的日期
SQL> select next_day('18-5月-2001','星期五') next_day from dual;
NEXT_DAY
----------
25-5月 -01
NEW_TIME
FMT:new_time(date,zone1,zone2)该函数用于返回时区一的日期时间所对应的时区二的日期时间。
SQL> select to_char(new_time(to_date('20050725 14:34:50','yyyymmdd hh24:mi:ss'),
'AST','GMT'),'yyyymmdd hh24:mi:ss') from dual;
NLSSORT
NLS_CHARSET_DECL_LEN
NLS_CHARSET_ID
NLS_CHARSET_NAME
NLS_INICAP
Nls_inicap(char,’nls_param’):其中char用于指定nchar或nvarchar2类型的字符串,其前面加上n,用单引号括起来,nls_param的格式为‘nls_sort=sort’,用于指定特定语言特征。
Declare
V_nls_initcap nChar(10);
Begin
V_nls_initcap:=nls_initcap(n’my word’);
End;
NLS_LOWER
NLS_UPPER
NVL
POWER
返回n1的n2次方根。
SQL> select power(2,10),power(3,3) from dual;
POWER(2,10) POWER(3,3)
----------- ----------
1024 27
RAWTOHEX
将一个二进制构成的字符串转换为十六进制
REF
REFTOHEX
REPLACE('string','s1','s2')
string 希望被替换的字符或变量
s1 被替换的字符串
s2 要替换的字符串
SQL> select replace('he love you','he','i') from dual;
REPLACE('H
----------
i love you
ROUND
将日期d按照fmt指定的格式舍入,fmt为字符串。
Round(n,[m])
如果m是负数,则四舍五入到小数点前m位,如果m是正数,则四舍五入到小数点后m位。
SQL>select round(12.34,'-1') from dual;
10
按照指定的精度进行舍入
SQL> select round(55.5),round(-55.4),trunc(55.5),trunc(-55.5) from dual;
ROUND(55.5) ROUND(-55.4) TRUNC(55.5) TRUNC(-55.5)
----------- ------------ ----------- ------------
56 -55 55 -55
ROWID
ROWIDTOCHAR
将ROWID数据类型转换为字符类型
select rowidtochar(rowid),a.* from code_opponent a ;
RPAD (粘贴字符)
RPAD 在列的右边粘贴字符
LPAD 在列的左边粘贴字符
SQL> select lpad(rpad('gao',10,'*'),17,'*')from dual;
LPAD(RPAD('GAO',1
-----------------
*******gao*******
不够字符则用*来填满
RTRIM
LTRIM 删除左边出现的字符串
RTRIM 删除右边出现的字符串
SQL> select ltrim(rtrim(' gao qian jing ',' '),' ') from dual;
LTRIM(RTRIM('
-----------
--
gao qian jing
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/17032106/viewspace-697667/,如需转载,请注明出处,否则将追究法律责任。
转载于:http://blog.itpub.net/17032106/viewspace-697667/