1.SUBSTR(string,start,count) 截取子字符串,从start开始,取count个,返回截取的字符串
参数:
string:原字符串;
start:截取开始位置;
count:截取长度
例:
STR
-----
bcdef
2.UPPER(str) 返回字符串,并将所有的字符大写
例:
STR
-----------
ABCDEFGHIJK
3.LOWER(str) 返回字符串,并将所有的字符小写
例:
STR
-----------
abcdefghijk
4.FLOOR(n) 对给定的数字取整数(取小于等于数值n的最大整数)
例:
----------
5.CEIL(n)
例:
----------
6.ROUND(number,[decimal_places]) 按照指定的精度进行舍入
参数:
number : 欲处理之数值
decimal_places : 四舍五入 , 小数取几位 ( 预设为 0 )
例:
----------
7.SIGN(n)取数字n的符号,大于0返回1,小于0返回-1,等于0返回0
例:
SQL> select SIGN(100) as num1,SIGN(0) as num2,SIGN(-100) as num3 from dual;
---------- ---------- ----------
8.decode(条件,值1,返回值1,值2,返回值2,...值n,返回值n,缺省值)
例如:
(当然值1,值2,值3也可以是表达式)
DE
----
正数
9.ADD_MONTHS(times,months)
SQL> select add_months(sysdate,6) from dual;
ADD_MONTHS(SYSDATE,6)
---------------------
2018/11/25 18:48:33
SQL> select add_months(sysdate,-6) from dual;
ADD_MONTHS(SYSDATE,-6)
----------------------
2017/11/25 18:49:09
10. 用来得到系统的当前日期
DT
--------------------
25-05-2018 星期五
11.TO_CHAR(date,'format') 日期格式转换
TO_CHAR(number,'format'); 数字格式转换
to_char(4567,'xxxx');进制转换:将10进制转换为16进制
例:
SQL> select to_char(sysdate,'yyyy-MM-dd HH24:mi:ss') as s_time from dual;
S_TIME
-------------------
2018-05-25 19:00:08
NUM
---------------------
SQL> select TO_CHAR(123,'$99,999.9') as salary from dual;
SALARY
----------
SQL> select to_char(7896,'xxxx') from dual;
TO_CHAR(7896,'XXXX')
--------------------
12.TO_NUMBER(string[,format])将字符串转换为数字数据类型
例:
TO_NUMBER('12345')
------------------
SQL> select to_number('$12345.678', '$999999.999') as num from dual;
----------
TO_NUMBER('19F','XXX')
----------------------
参数:
string:原字符串;
start:截取开始位置;
count:截取长度
例:
STR
-----
bcdef
2.UPPER(str) 返回字符串,并将所有的字符大写
例:
STR
-----------
ABCDEFGHIJK
3.LOWER(str) 返回字符串,并将所有的字符小写
例:
STR
-----------
abcdefghijk
4.FLOOR(n) 对给定的数字取整数(取小于等于数值n的最大整数)
例:
----------
5.CEIL(n)
例:
----------
6.ROUND(number,[decimal_places]) 按照指定的精度进行舍入
参数:
number : 欲处理之数值
decimal_places : 四舍五入 , 小数取几位 ( 预设为 0 )
例:
----------
7.SIGN(n)取数字n的符号,大于0返回1,小于0返回-1,等于0返回0
例:
SQL> select SIGN(100) as num1,SIGN(0) as num2,SIGN(-100) as num3 from dual;
---------- ---------- ----------
8.decode(条件,值1,返回值1,值2,返回值2,...值n,返回值n,缺省值)
例如:
(当然值1,值2,值3也可以是表达式)
DE
----
正数
9.ADD_MONTHS(times,months)
SQL> select add_months(sysdate,6) from dual;
ADD_MONTHS(SYSDATE,6)
---------------------
2018/11/25 18:48:33
SQL> select add_months(sysdate,-6) from dual;
ADD_MONTHS(SYSDATE,-6)
----------------------
2017/11/25 18:49:09
10. 用来得到系统的当前日期
DT
--------------------
25-05-2018 星期五
11.TO_CHAR(date,'format') 日期格式转换
TO_CHAR(number,'format'); 数字格式转换
to_char(4567,'xxxx');进制转换:将10进制转换为16进制
例:
SQL> select to_char(sysdate,'yyyy-MM-dd HH24:mi:ss') as s_time from dual;
S_TIME
-------------------
2018-05-25 19:00:08
NUM
---------------------
SQL> select TO_CHAR(123,'$99,999.9') as salary from dual;
SALARY
----------
SQL> select to_char(7896,'xxxx') from dual;
TO_CHAR(7896,'XXXX')
--------------------
12.TO_NUMBER(string[,format])将字符串转换为数字数据类型
例:
TO_NUMBER('12345')
------------------
SQL> select to_number('$12345.678', '$999999.999') as num from dual;
----------
TO_NUMBER('19F','XXX')
----------------------
文章来源: SQL学习笔记――Oracle常用函数