Oracle数据库(三)函数的使用

1、在 Oracle 数据库中使用两种主要类型的函数:
· 单行函数:单行函数同时只能对一行进行操作,对输入的每一行只返回一行结果,
· 聚合函数:聚合函数可以同时对多行进行操作,并返回一行输出结果。
2、单行函数的使用:
单行函数主要有以下几种:
(1) 字符函数:可以对由字符组成的字符串进行操作,结果返回字符串或者数字。
(2) 数字函数:可以对数字进行计算,结果返回数字
(3) 转换函数:可以将一种数据类型转换成另外一种数据类型。
(4) 日期函数:可以对日期和时间进行处理
(5) 正则表达式函数:在查询数据时可以使用正则表达式。这些函数都是Oracle 10g中新增的。
1)字符函数:
函数 说明
========================================================================================================
ASCII(x) 返回字符 x 的 ascii 码
========================================================================================================
chr(x) 返回 ASCII 码为 x 的字符
========================================================================================================
concat(x , y) 将 y 附加在 x 上 ,并将所得到的字符串作为结果返回
========================================================================================================
initcap(x) 将 x 中的每个单词的首字母都转换成大写字母,并返回所得到的的字符串
========================================================================================================
instr(x , find_string , 在 x 中查找字符串 find_string ,然后返回 find_string 所在的位置,可以提供一个可选的
[,start] , [,occurrence]) 位置start位置来指定给函数从这个位置开始查找。同样,也可以指定一个可选的参数occurrence
,来说明应该返回 find_string 第几次出现的位置 。
========================================================================================================
length(x) 返回 x 中字符的个数
========================================================================================================
lower(x) 将 x 中的字母转换成小写 , 并返回所得到的字符串
========================================================================================================
lpad(x , width [,pad_string]) 在 x 的左边补齐空格 , 得到总长为 width 个字符的字符串。该函数可以提供一个
可选的 pad_string , 这个参数用于指定在 x 左边补齐的字符串
========================================================================================================
ltrim(x [,trim_string]) 从 x 的左边截去一些字符,可以指定一个可选的参数trim_string来指定要截去的
;字符,如果不指定trim_string参数,则默认截去空格
========================================================================================================
nanvl(x , value) Oracle 10g中新增的函数。如果 x 匹配 NaN 这个特殊(非数字),就返回 value,否则返回
x ;
========================================================================================================
nvl(x , value) 如果 x 为空,则返回 value ,否则返回 x ;
========================================================================================================
nvl2(x , value1 , value2) 如果 x 为非空,则返回 value1 ,否则就返回 value2
========================================================================================================
replace(x , 在 x 中查找 search_string , 并将其替换为 replace_string
search_string ,replace_string)
========================================================================================================
rpad(x , width [,pad_string]) 与 lpad 类似,不过要对 x 的右边进行补齐
========================================================================================================
rtrim(x [,trim_string]) 与 ltrim 类似 ,不过要对 x 的右边进行截去
========================================================================================================
soundex(x) 返回一个包含 x 的发音的字符串 。该函数用于对英文发音不同但却比较接近的单词进行比较
========================================================================================================
substr(x ,start [,length]) 返回 x 中的一个子字符串,这个子字符串从start处开始,还可以为这个子字符串制定一个
可选的参数length ;
========================================================================================================
trim([trim_charFROM] x) 从 x 的左边和右边同时截去一些字符。可以指定一个可选的参数 trim_string ,来指定要
截去的字符;如果不指定 trim_string 则默认截去空格
========================================================================================================
upper(x) 将 x 中的字符转换成为大写,并返回所得的字符串

2)数字函数:
	
	函数					说明										例子
---------------------------------------------------------------------------------------------------
	abs(x)				返回x的绝对值							abs(10) = 10  abs(-10) = 10
---------------------------------------------------------------------------------------------------
	acos(x)				返回 x 的反余弦						acos(1) = 0		acos(-1) = π
---------------------------------------------------------------------------------------------------
	asin(x)				返回 x 的反正弦						asin(1) = 1.5707 asin(-1) = -1.5707
---------------------------------------------------------------------------------------------------
	atan(x)				返回 x 的反正切						atan(1) = 0.7853 atan(-1) = -0.7853
---------------------------------------------------------------------------------------------------
	atan2(x , y)		返回 x 和 y 的反正切					atan2(1 , -1) = 2.356
---------------------------------------------------------------------------------------------------
	bitand(x , y)		返回对 x 和 y进行位与(AND)操作的结果	bitand(0 , 0) = 0 bitand(0 , 1) = 0
---------------------------------------------------------------------------------------------------
	cos(x)
---------------------------------------------------------------------------------------------------
	cosh(x)				返回 x 的双曲余弦函数
---------------------------------------------------------------------------------------------------
	ceil(x)				返回大于或者等于 x 的最小整数
---------------------------------------------------------------------------------------------------
	exp(x)				返回 e 的 x 次幂,其中 e ≈ 2.71828183
---------------------------------------------------------------------------------------------------
	floor(x)			返回小于或者等于 x 的最大整数
---------------------------------------------------------------------------------------------------
	log(x , y)			返回以 x 为底的 y 的对数
---------------------------------------------------------------------------------------------------
	ln(x)				返回 x 的自然对
---------------------------------------------------------------------------------------------------
	mod(x , y)			返回 x 除以 y 的余数
---------------------------------------------------------------------------------------------------
	power(x , y)		返回 x 的 y 次幂
---------------------------------------------------------------------------------------------------
	round(x [,y])		返回对 x 进行取整的结果;y 为可选参数,说明对第几位小殊进行取整
						如果没有指定 y ,则对 x 在 0 位小数处进行取整;如果 y 是负数,
						则对 x 在小数点左边的第|y|位处进行取整。
---------------------------------------------------------------------------------------------------
	sign(x)				如果 x 是负数,则返回-1,;如果 x 是正数,则返回 1 ,如果是 0 ,则返回 0
---------------------------------------------------------------------------------------------------
	sinh(x)				返回 x 的双曲正弦函数
---------------------------------------------------------------------------------------------------
	sqrt(x)				返回 x 的平方根
---------------------------------------------------------------------------------------------------
	tan(x)				返回 x 的正切函数
---------------------------------------------------------------------------------------------------
	tanh(x)				返回 x 的双曲正切函数
---------------------------------------------------------------------------------------------------
	trunc(x[,y])		返回对 x 进行截断的结果;y 为可选参数,说明对第几位小数进行截断。如果没有指定 y,
						则对 x 在 0 位小数处进行截断,如果 y 是负数,则对 x 在小数点左边的第|y|位处进行截断
	
	
3)转换函数:
	(1)to_char()
		to_char(x [,format])函数用于将 x 转换成为一个字符串,也可以指定一个可选的参数 format 来说明 x 的格式
		。结构 format 取决于 x 是数字函数日期 。
		select to_char(x) from dual ;
		select to_char(12345.67 , '999,999.99') ;
			TO_CHAR(12345.67,'999,999.99')
			---------------------------------
			  12,345.67
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值