Oracle 11g学习笔记--使用简单函数

Oracle 11g学习笔记–使用简单函数

说明:本文总结自《Oracle Database 11g SQL 开发指南》Jason Price著

Oracle数据库的函数分为两类:

  1. 单行函数:单行函数只能对一行操作。
  2. 聚合函数:同时可以对多行进行操作,并返回一行输出结果。

单行函数

说明:由于函数较多,在此只列举常用的;

字符函数
ascll(x):返回x的ascll码;
char(x):返回ascll码为x的字符;
length(x):返回x字符个数;
lower(x):返回x的小写形式;
upper(x):返回x的大写形式;
nvl(x, value):若x为空,则返回value,否则返回x
nvl2(x, value1, value2):若x非空,返回value1,否则返回value2;

数字函数
abs(x):返回x的绝对值
power(x, y):返回x的y次幂
round(x, y):返回x取整的结果;y表示从小数点第几位开始取整,可以为负,此时向左数;
mod(x,y):返回x除以y的余数;
注:支持三角函数与反三角函数;

转换函数
此类函数的作用主要是将目标字符串转换为想要的格式然后返回,或者将其从一种数据类型转换为另一种数据类型;
toNumer(‘number’ [, format]):将满足fromat格式的目标字符串转换为数字;
toChar(target [,format]):将目标转换为字符串;
例:

select to_number('-¥1.15', 'L9.99') from dual; 
--输出-1.15
select to_char(-1.15, 'L9.99') from dual;
--输出:-¥1.15

正则表达式函数
reqexp_like(x, pattern [,match_option]) 返回真或者假,一般用在where后面;
match_option:
●c:区分大小写,默认选项
●l:不区分大小写
●n:允许使用可以匹配任意字符串的操作符
●m:将x作为一个包含多行的字符串

regexp_insert(x, pattern
[, start
[, occurence
[, return_option
[, match_option
[, subexp_option]]]]):在x中查找pattern,返回pattern所在的位置
●start:开始查找的位置,默认1;
●occurence:第几次出现时,默认1;
●return_option:若为0,标示要返回的是x中第一个字符的位置,否则为x中出现pattern之后的字符串位置;
●match_option:与regexp_like中的相同
●subexp_option:这个是11g新增加的,工作方式有点复杂,在此不详述;

regexp_replace(x, pattern
[, replace_string
[, start
[, occerence
[, match_option]]]):在x中查找pattern,将其替换为replace_string;参数说明同上

regexp_substr(x, pattern
[, start
[, occerence
[, match_option
[, subexp_option]]]]):返回x中可以匹配pattern的一个子字符串。

regexp_count(x, pattern
[, start
[, match_option]]):统计x中pattern出现的次数;

聚合函数

聚合函数比较常见,在MySql或者SqlServer中都用过 ;
avg(x), count(x), max(x), min(x), sum(x);
不常见的:
median(x):返回x的中间值
stddev(x):返回x的标准差
variance(x):返回x的方差

你可能感兴趣的:(oracle)