Oracle(11g)数据库教程之十一:Oracle系统函数及自定义函数

Oracle(11g)数据库教程之十一:Oracle系统函数及自定义函数

准备工作:

先启动Oracle,并打开前期建立的数据库和表

查看每个表的结构:

一、系统函数

知识储备:DUAL是Oracle与数据字典一起自动创建的一个表,它只有一列:DUMMY,其数据类型为:VARCHAR2(1)。DUAL中只有一行数据:'X'。DUAL属于SYS模式,但所有用户都可以使用DUAL名称访问它。用SELECT计算常量表达式、伪列等值时常用该表,因为它只返回一行数据,而使用其它表时可能返回多个数据行。

1、数学函数

(1)、abs();  求一个数的绝对值

(2)、sqrt(); 求一个数的平方根。sqrt是sqruar(平方,矩形) ,root(根)的缩写。

(3)、power()  幂运算

(4)、随机数

产生一个任意大小的随机数: 

 

 产生一个0~1之间的随机数

 

 产生一个10~20之间的随机数

 

随机排序(每次的结果不一样,可以用来随机抽取:比如随机取5名同学,用来摇号或抽奖实际场景)

(5)、三角函数

(6)、ceil()  进一取整、 floor()舍一取整

(7)、trunc(x,y)  比较霸道,不管四舍五入,直接把x,的y位小数直接舍去。

(8)、round函数: round(数值,n):结果近似到小数点右侧的n位。

2、字符串函数

几个常用的字符串函数

(1)、字符串连接

(2)、字母大小写转换函数UPPER()和LOWER()

(3)、字符串长度

3、日期和时间函数

(1)、Oracle获取系统当前时间:

(2)、年、月、日

求每个同学的年龄

查询八月出生的学生信息

二、用户自定义函数(每个例子要运行出来,并理解每一行代码含义)

Oracle自定义函数的语法如下:

1.    create or replace function 函数名(参数1 模式 参数类型) 

2.    return 返回值类型 

3.    as 

4.    变量1 变量类型; 

5.    变量2 变量类型; 

6.    begin 

7.        函数体; 

8.    end 函数名;

参数的模式有3种:(如果没有注明, 参数默认的类型为 in.)

in: 为只读模式, 在函数中, 参数的值只能被引用, 不能被改变;

out: 为只写模式, 只能被赋值, 不能被引用;

in out:  可读可写.

例1、计算某一门课程全体学生的平均成绩(在Oracle自带的编辑环境

运行:(函数调用时,可多举例不同学科的平均分)

例2、创建一个统计数据库中不同性别人数的函数

运行:

另外一种调用函数方式

例3、用函数count_num统计student表中有多少男同学。

删除函数:

drop function count_num;

或在界面

直接删除。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值