ORACLE数据库提供了一系列的内置函数,这些函数在SQL语句执行时用于处理数据,这些函数可以大致分为以下几类:字符函数、数值函数、日期函数、转换函数和其他一些高级函数,下面将详细介绍这些常用的oracle函数。,字符函数,,字符函数主要用于处理字符串类型的数据。,1、
UPPER() 和 LOWER(),
UPPER()
函数将文本转换为大写,而
LOWER()
函数将文本转换为小写。,示例:
SELECT UPPER('Oracle'), LOWER('Oracle') FROM dual;
,2、
INITCAP() 和 INITIALIES(),
INITCAP()
函数将每个单词的首字母转换为大写,其余字母转换为小写。,
INITIALIES()
函数则将文本转换为带有下划线的小写。,示例:
SELECT INITCAP('oracle database'), INITIALIES('oracle database') FROM dual;
,3、
CONCAT() 和 ||,
CONCAT()
函数和
||
运算符都用于连接两个或多个字符串。,示例:
SELECT CONCAT('Hello', ' World'), 'Hello' || ' World' FROM dual;
,4、
SUBSTR() 和 INSTR(),
SUBSTR()
函数用于提取子字符串,而
INSTR()
函数用于查找子字符串的位置。,示例:
SELECT SUBSTR('Oracle', 1, 5), INSTR('Database Management', 'an') FROM dual;
,5、
REPLACE() 和 TRANSLATE(),
REPLACE()
函数用于替换字符串中的某个字符或子字符串。,
TRANSLATE()
函数用于根据字符映射表替换字符串中的字符。,示例:
SELECT REPLACE('Oracle', 'a', 'e'), TRANSLATE('Table', 'aeiou', 'AEIOU') FROM dual;
,数值函数,数值函数用于对数字数据进行操作。,1、
ROUND() 和 TRUNC(),
ROUND()
函数用于四舍五入数字到指定的小数位数。,
TRUNC()
函数用于截断数字到整数部分。,示例:
SELECT ROUND(123.456, 2), TRUNC(123.456) FROM dual;
,,2、
MOD() 和 POWER(),
MOD()
函数用于计算两个数相除后的余数。,
POWER()
函数用于计算一个数的指数次幂。,示例:
SELECT MOD(10, 3), POWER(2, 3) FROM dual;
,3、
ABS() 和 SIGN(),
ABS()
函数返回一个数的绝对值。,
SIGN()
函数返回一个数的符号(-1、0或1)。,示例:
SELECT ABS(-123), SIGN(-123) FROM dual;
,日期函数,日期函数用于处理日期和时间类型的数据。,1、
SYSDATE(),
SYSDATE()
函数返回当前系统日期和时间。,示例:
SELECT SYSDATE FROM dual;
,2、
ADD_MONTHS() 和 NEXT_DAY(),
ADD_MONTHS()
函数用于给日期加上指定的月份数。,
NEXT_DAY()
函数用于找到指定日期后的下一个指定星期几。,示例:
SELECT ADD_MONTHS(SYSDATE, 1), NEXT_DAY(SYSDATE, 'Monday') FROM dual;
,3、
EXTRACT() 和 TO_CHAR(),
EXTRACT()
函数用于从日期中提取特定的部分(如年、月、日等)。,
TO_CHAR()
函数用于将日期转换为字符串,允许格式化输出。,示例:
SELECT EXTRACT(YEAR FROM SYSDATE), TO_CHAR(SYSDATE, 'YYYY-MM-DD') FROM dual;
,转换函数,转换函数用于在不同的数据类型之间进行转换。,1、
TO_NUMBER() 和 TO_CHAR(),,
TO_NUMBER()
函数用于将字符数据转换为数字。,
TO_CHAR()
函数用于将数字或日期转换为字符。,示例:
SELECT TO_NUMBER('123'), TO_CHAR(123) FROM dual;
,2、
NVL() 和 NVL2(),
NVL()
函数如果第一个参数为NULL,则返回第二个参数的值。,
NVL2()
函数如果第一个参数不为NULL,则返回第二个参数的值,否则返回第三个参数的值。,示例:
SELECT NVL(NULL, 'N/A'), NVL2('Oracle', 'Yes', 'No') FROM dual;
,其他高级函数,除了上述基础函数之外,Oracle还提供了一系列高级函数,如分析函数、集合函数等。,1、
ROW_NUMBER() 和 RANK(),
ROW_NUMBER()
函数为结果集中的每一行分配唯一的序号。,
RANK()
函数为结果集中的每一行分配排名,相同值的行会有相同的排名。,示例:
SELECT ROW_NUMBER() OVER (ORDER BY salary DESC), RANK() OVER (ORDER BY salary DESC) FROM employees;
,2、
SUM() 和 AVG(),
SUM()
函数用于计算一列的总和。,
AVG()
函数用于计算一列的平均值。,示例:
SELECT SUM(salary), AVG(salary) FROM employees;
,相关问题与解答,
Q1: 如何在Oracle中使用LIKE
操作符进行模糊查询?,A1: 在Oracle中,可以使用
LIKE
操作符结合通配符进行模糊查询,常用的通配符有
%
(表示任意数量的字符)和
_
(表示单个字符),要查找名字以”Li”开头的所有员工,可以使用以下查询:,
Q2: 如何使用GROUP BY
和HAVING
子句进行分组和筛选?,A2: 在Oracle中,
GROUP BY
子句用于将结果集按一列或多列进行分组,而
HAVING
子句用于对分组后的结果进行筛选,要找出平均薪资超过5000的部门,可以使用以下查询:
Oracle中常用的函数有哪些
版权声明:本文采用知识共享 署名4.0国际许可协议 [BY-NC-SA] 进行授权
文章名称:《Oracle中常用的函数有哪些》
文章链接:https://zhuji.vsping.com/489332.html
本站资源仅供个人学习交流,请于下载后24小时内删除,不允许用于商业用途,否则法律问题自行承担。
文章名称:《Oracle中常用的函数有哪些》
文章链接:https://zhuji.vsping.com/489332.html
本站资源仅供个人学习交流,请于下载后24小时内删除,不允许用于商业用途,否则法律问题自行承担。