视频1 视频21 视频41 视频61 视频文章1 视频文章21 视频文章41 视频文章61 推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37 推荐39 推荐41 推荐43 推荐45 推荐47 推荐49 关键词1 关键词101 关键词201 关键词301 关键词401 关键词501 关键词601 关键词701 关键词801 关键词901 关键词1001 关键词1101 关键词1201 关键词1301 关键词1401 关键词1501 关键词1601 关键词1701 关键词1801 关键词1901 视频扩展1 视频扩展6 视频扩展11 视频扩展16 文章1 文章201 文章401 文章601 文章801 文章1001 资讯1 资讯501 资讯1001 资讯1501 标签1 标签501 标签1001 关键词1 关键词501 关键词1001 关键词1501 专题2001
Oracle学习笔记4--单行函数
2020-11-09 16:20:16 责编:小采
文档


使用函数可以完成一系列的操作。数据库之间的不同,在于对函数的支持上是不一样。 本次笔记学习函数。函数分为单行函数和多行函数,此处重点学习单行函数。 单行函数分类: 字符函数 数值函数 日期函数 转换函数 通用函数 字符函数:又分为大小写控制函数

  使用函数可以完成一系列的操作。数据库之间的不同,在于对函数的支持上是不一样。

  本次笔记学习函数。函数分为单行函数和多行函数,此处重点学习单行函数。

  单行函数分类:

  字符函数

  数值函数

  日期函数

  转换函数

  通用函数

  字符函数:又分为大小写控制函数和字符控制函数

  1)大小写空值函数:

  LOWER()

  UPPER()

  INITCAP()

?

1

2

3

4

5

SQL> select lower('SQL COURSE') , upper('sql course') , initcap('SQL course') from dual ;

LOWER('SQLCOURSE') UPPER('SQLCOURSE') INITCAP('SQLCOURSE')

------------------ ------------------ --------------------

sql course SQL COURSE Sql Course

  通过上面的查询结果,看出:

  Lower() 函数的作用是:将字符转换为小写。

  Upper()函数的作用是:将字符转换为大写。

  Initcap()函数的作用是:将字符的首字母转换为大写。

  例:查询名字是king的雇员信息 ,由于不确定数据库中名字的大小写形式,我们引入lower函数和 upper()函数,来保证查询的有效性。

?

1

2

3

4

5

6

7

8

9

10

11

SQL> select * from emp where lower(ename) = 'king' ;

EMPNO ENAME JOB MGR HIREDATE SAL COMM DEPTNO

----- ---------- --------- ----- ----------- --------- --------- ------

7839 KING PRESIDENT 1981/11/17 5000.00 10

SQL> select * from emp where ename = upper('king' );

EMPNO ENAME JOB MGR HIREDATE SAL COMM DEPTNO

----- ---------- --------- ----- ----------- --------- --------- ------

7839 KING PRESIDENT 1981/11/17 5000.00 10

  例:将查询结果字符的首字母转换为大写形式,使用initcap 函数。

?

1

SQL> select initcap(ename) from emp where ename = 'KING';

?

1

2

3

INITCAP(ENAME)

--------------

King

  字符控制函数:

  concat()

  substr()

  length()

  replace()

  例:字符串除了使用‘||’连接之外,还可以使用concat() 函数进行连接 。

?

1

2

3

4

5

6

7

8

9

10

11

SQL> select concat('Hello ' , 'world' ) from dual ;

CONCAT('HELLO','WORLD')

-----------------------

Hello world

SQL> select substr('hello' , 1 , 2) ,length('world') , replace('sql' , 'q' , 'X') from dual ;

SUBSTR('HELLO',1,2) LENGTH('WORLD') REPLACE('SQL','Q','X')

------------------- --------------- ----------------------

he 5 sXl

  上例中我们可以看到 substr()的作用是截取字符串,在字符串的后面跟两个参数,第一个参数表示的是要截取的

  起始位置,第二个参数表示的是截取的个数,length()函数返回的是字符串的长度。replace() 字符串后面跟两

  个参数,第一个参数表示要替换的字母,第二个参数表示将第一个字母换为第二个字母。

  另外Oracle还支持倒着截取字符串的方式:

?

1

2

3

4

5

6

7

SQL> select ename ,substr(ename ,-3 ) from emp where deptno = 10 ;

ENAME SUBSTR(ENAME,-3)

---------- ----------------

CLARK ARK

KING ING

MILLER LER

  数值函数:

  round():四舍五入函数

  trunc():截断小数位函数

  mod() :取余函数

  例:

?

1

2

3

4

5

SQL> select round(234.12 , 2) , round(234.324) , round(234.25 , -2) from dual;

ROUND(234.12,2) ROUND(234.324) ROUND(234.25,-2)

--------------- -------------- ----------------

234.12 234 200

  后面的参数 2 表示保留小数点后两位,如果不写,默认为零,-2 表示对小数点前面的数进行四舍五入ROUND(234.25,-2) , 4 舍去,3 舍去得到200。

  例:

?

1

2

3

4

5

SQL> select trunc(234.12 , 2) , trunc(234.324) , trunc(248.25 , -2) from dual;

TRUNC(234.12,2) TRUNC(234.324) TRUNC(248.25,-2)

--------------- -------------- ----------------

下载本文
显示全文
专题