ORACLE 常用函数总结(80个)

yizhihongxing

ORACLE 常用函数总结(80个) - 完整攻略

简介

本文档总结了 ORACLE 数据库常见的 80 种函数,分为以下几个部分:

  1. 字符串函数
  2. 数字函数
  3. 日期函数
  4. 转换函数
  5. 聚合函数
  6. 分析函数

在使用这些函数之前,您需要具备一定的 ORACLE 数据库基础知识。

字符串函数

1. LENGTH函数

该函数用于返回字符串的长度,其语法如下:

LENGTH(string)

示例:

SELECT LENGTH('Hello, world!') FROM dual;
-- 结果为 13

2. SUBSTR函数

该函数用于返回字符串子串,其语法如下:

SUBSTR(string, start[, length])

其中,start 参数是开始位置的索引(从 1 开始),length 参数可选,表示子串的长度。

示例:

SELECT SUBSTR('Hello, world!', 7) FROM dual;
-- 结果为 world!

SELECT SUBSTR('Hello, world!', 7, 5) FROM dual;
-- 结果为 world

3. INSTR函数

该函数用于返回某个子串在字符串中第一次出现的位置,其语法如下:

INSTR(string, substring[, start[, occurrence]])

其中,string 是原始字符串,substring 是要查找的子串,start 是开始查找的位置(可选,默认为 1),occurrence 是要查找的子串的序号(可选,默认为 1)。

示例:

SELECT INSTR('Hello, world!', 'world') FROM dual;
-- 结果为 7

SELECT INSTR('Hello, world!', 'o', 5, 2) FROM dual;
-- 结果为 8

4. TRIM函数

该函数用于去除字符串两端的空格(或者其他字符),其语法如下:

TRIM([LEADING|TRAILING|BOTH] trim_character FROM string)

其中,LEADING 表示去除左边的字符,TRAILING 表示去除右边的字符,BOTH 表示左右两边都去除,trim_character 是要去除的字符,默认为空格。

示例:

SELECT TRIM('   Hello, world!   ') FROM dual;
-- 结果为 Hello, world!

SELECT TRIM(LEADING 'a' FROM 'aaaaaHello, world!aaaaa') FROM dual;
-- 结果为 Hello, world!aaaaa

数字函数

1. ROUND函数

该函数用于对数字进行四舍五入,其语法如下:

ROUND(number[, decimals])

其中,number 是要进行四舍五入的数字,decimals 表示要保留的小数位数(可选,默认为 0)。

示例:

SELECT ROUND(3.1415926, 2) FROM dual;
-- 结果为 3.14

2. TRUNC函数

该函数用于截取小数点后面的数字,其语法如下:

TRUNC(number[, decimals])

其中,number 是要截取的数字,decimals 表示要保留的小数位数(可选,默认为 0)。

示例:

SELECT TRUNC(3.1415926, 2) FROM dual;
-- 结果为 3.14

3. MOD函数

该函数用于计算两个数字相除的余数,其语法如下:

MOD(numerator, denominator)

其中,numerator 是分子,denominator 是分母。

示例:

SELECT MOD(10, 3) FROM dual;
-- 结果为 1

日期函数

1. SYSDATE函数

该函数用于获取当前的系统日期和时间,其语法如下:

SYSDATE

示例:

SELECT SYSDATE FROM dual;
-- 结果为当前的系统日期和时间

2. ADD_MONTHS函数

该函数用于在日期上增加指定的月数,其语法如下:

ADD_MONTHS(date, months)

其中,date 是要增加月份的日期,months 是要增加的月数。

示例:

SELECT ADD_MONTHS(SYSDATE, 2) FROM dual;
-- 结果为当前日期加 2 个月后的日期

3. MONTHS_BETWEEN函数

该函数用于计算两个日期之间相差的月数,其语法如下:

MONTHS_BETWEEN(date1, date2)

其中,date1date2 是要计算的两个日期。

示例:

SELECT MONTHS_BETWEEN(SYSDATE, TO_DATE('20210101', 'YYYYMMDD')) FROM dual;
-- 结果为当前日期和 2021 年 1 月 1 日相差的月数

转换函数

1. TO_CHAR函数

该函数用于将数值、日期等类型转换为字符类型,其语法如下:

TO_CHAR(value[, format])

其中,value 是要转换的值,format 是转换后的格式(可选)。

示例:

SELECT TO_CHAR(1234.5678, '9999.9999') FROM dual;
-- 结果为 1234.5678

SELECT TO_CHAR(SYSDATE, 'YYYY-MM-DD HH24:MI:SS') FROM dual;
-- 结果为当前日期和时间的格式化字符串

2. TO_NUMBER函数

该函数用于将字符类型转换为数值类型,其语法如下:

TO_NUMBER(string[, format])

其中,string 是要转换的字符串,format 是转换后的格式(可选)。

示例:

SELECT TO_NUMBER('1234.5678', '9999.9999') FROM dual;
-- 结果为 1234.5678

聚合函数

1. AVG函数

该函数用于计算某一列的平均值,其语法如下:

AVG(column)

其中,column 是要计算平均值的列。

示例:

SELECT AVG(salary) FROM employees;
-- 计算 employees 表中 salary 列的平均值

2. COUNT函数

该函数用于计算某一列的行数,其语法如下:

COUNT(column|*)

其中,column 是要计算行数的列,* 表示计算所有行数。

示例:

SELECT COUNT(*) FROM employees;
-- 计算 employees 表的总行数

3. MAX函数

该函数用于计算某一列的最大值,其语法如下:

MAX(column)

其中,column 是要计算最大值的列。

示例:

SELECT MAX(salary) FROM employees;
-- 计算 employees 表中 salary 列的最大值

4. MIN函数

该函数用于计算某一列的最小值,其语法如下:

MIN(column)

其中,column 是要计算最小值的列。

示例:

SELECT MIN(salary) FROM employees;
-- 计算 employees 表中 salary 列的最小值

5. SUM函数

该函数用于计算某一列的总和,其语法如下:

SUM(column)

其中,column 是要计算总和的列。

示例:

SELECT SUM(salary) FROM employees;
-- 计算 employees 表中 salary 列的总和

分析函数

1. DENSE_RANK函数

该函数用于计算某一列的排名,其语法如下:

DENSE_RANK() OVER (ORDER BY column [ASC|DESC])

其中,column 是要排名的列,ASC 表示升序排列,DESC 表示降序排列。

示例:

SELECT employee_id, salary, DENSE_RANK() OVER (ORDER BY salary DESC) FROM employees;
-- 计算 employees 表中 salary 列的排名

2. LAG函数

该函数用于查询前一个数据,其语法如下:

LAG(column [, offset [, default]]) OVER (ORDER BY column)

其中,column 是要查询的列,offset 表示偏移量,default 表示默认值。

示例:

SELECT employee_id, salary, LAG(salary, 1, 0) OVER (ORDER BY salary DESC) as previous_salary FROM employees;
-- 计算 employees 表中 salary 列的前一个数据

以上只是本文档的一部分函数,更多函数请查看本文档。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:ORACLE 常用函数总结(80个) - Python技术站

(0)
上一篇 2023年5月21日
下一篇 2023年5月21日

相关文章

  • Linux下将Mysql和Apache加入到系统服务里的方法

    在Linux环境下,将Mysql和Apache加入到系统服务里非常方便,这样可以保证它们在系统启动时自动运行。 以下是将Mysql和Apache加入到系统服务的步骤: 1. 编写Service文件 Service文件被用于定义自启动服务的相关信息,包括服务名、服务描述、服务的工作目录、执行命令等。Service文件通常存放在/etc/systemd/syst…

    database 2023年5月22日
    00
  • MySQL如何实现事务的ACID

    MySQL通过使用事务(Transaction)来保证数据的一致性和持久性。在MySQL中,一个事务可以由多条SQL语句所组成,而ACID是事务处理的重要属性,其中包括原子性(Atomicity)、一致性(Consistency)、隔离性(Isolation)和持久性(Durability)。 下面是MySQL如何实现事务的ACID: 1. 原子性(Atom…

    database 2023年5月22日
    00
  • Spring myBatis数据库连接异常问题及解决

    下面就给您详细讲解一下如何解决 Spring MyBatis数据库连接异常的问题。 1. 问题背景 在 Spring MyBatis 的项目中,我们可能会遇到以下异常: org.springframework.jdbc.CannotGetJdbcConnectionException: Could not get JDBC Connection; neste…

    database 2023年5月19日
    00
  • Linux学习基础教程

    “Linux学习基础教程”攻略 简介 Linux学习是现代IT人士必备技能之一,本教程将帮助读者快速入门Linux基础知识。此教程面向初学者,内容涵盖了Linux基础命令、文本编辑器和文件权限等核心知识点。 学习过程 1. 安装Linux 如果您尚未安装Linux,请首先选择一款适合您的发行版进行安装。常用的发行版有Ubuntu、Debian、CentOS等…

    database 2023年5月22日
    00
  • DBMS中的审计跟踪

    DBMS中的审计跟踪是指在数据库管理系统中记录和跟踪数据库中各种操作、事件和故障的技术和管理过程。审计跟踪的实现需要借助于DBMS中的特定机制和功能,这样才能够获得更加完整准确的审计信息。下面就来详细讲解一下DBMS中的审计跟踪的攻略以及实例。 1.审计跟踪的基本概念 审计跟踪是指记录和追踪数据库系统中的各种操作,包括增删改查等,以及异常事件和故障报告等。通…

    database 2023年3月27日
    00
  • Mysql自连接查询实例详解

    Mysql自连接查询是关于一个表自己与自己进行连接查询的方法。这种查询在复杂的数据结构中非常有用,它可以让我们找到相对于自己某些列存在相似性的记录,构造示例如下: 准备工作 示例中我们使用的是employees这张表,表中存放的是雇员的信息,包括雇员编号、名字、性别、工资、职位、上司等。 CREATE TABLE employees ( emp_no INT…

    database 2023年5月22日
    00
  • MySql超详细讲解表的用法

    MySql超详细讲解表的用法 简介 在Mysql数据库中,表是最基本的数据库对象。表定义了数据的组织形式,是数据存储和管理的基本单位。 创建表 在MySQL中,可以通过CREATE TABLE语句创建一个表。 语法如下: CREATE TABLE table_name( column1 datatype, column2 datatype, ……. …

    database 2023年5月21日
    00
  • Redis 原子操作INCR

    The content below come from http://try.redis.io/  There is something special about INCR. Why do we provide such an operation if we can do it ourself with a bit of code? After all i…

    Redis 2023年4月16日
    00
合作推广
合作推广
分享本页
返回顶部