ORACLE 常用函数总结(80个)

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日

相关文章

  • centOS7安装MySQL数据库

    CentOS 7 安装 MySQL 数据库 安装MySQL 更新 YUM 软件包索引: sudo yum update 安装 MySQL: sudo yum install mysql-server 启动 MySQL 服务并设置开机自启: sudo systemctl start mysqld sudo systemctl enable mysqld 配置 …

    database 2023年5月22日
    00
  • mysql字符集相关总结

    MySQL字符集相关总结 MySQL字符集是指在数据库中使用的字符编码方式,包括每个字符所占的位数、用于存储的字节及其排序规则等方面。正确选择和设置字符集对于保障数据库数据的完整性及避免乱码问题具有非常重要的意义。 MySQL字符集类型 MySQL字符集主要分为以下几种类型: ASCII:一种只有128个字符的字符集,包括数字、字母和一些标点符号等。 Uni…

    database 2023年5月22日
    00
  • 详解MySQL比较运算符

    MySQL 中的比较运算符主要包括: 等于运算符:= 用于比较两个值是否相等,如果相等则返回 TRUE,否则返回 FALSE。 例: SELECT * FROM students WHERE name = '张三'; 不等于运算符:<> 用于比较两个值是否不相等,如果不相等则返回 TRUE,否则返回 FALSE。 例: SEL…

    MySQL 2023年3月9日
    00
  • redis实现加锁的几种方法示例详解

    1. redis加锁分类 redis能用的的加锁命令分表是INCR、SETNX、SET 2. 第一种锁命令INCR 这种加锁的思路是, key 不存在,那么 key 的值会先被初始化为 0 ,然后再执行 INCR 操作进行加一。然后其它用户在执行 INCR 操作进行加一时,如果返回的数大于 1 ,说明这个锁正在被使用当中。     1、 客户端A请求服务器获…

    Redis 2023年4月13日
    00
  • linux设置服务开机自启动的三种方式

    下面是详细讲解 “Linux设置服务开机自启动的三种方式”的攻略: 1. 使用systemd设置服务开机自启动 首先确认需要设置开机自启动的服务已经通过Systemd进行管理,然后使用以下命令设置开机自启动: sudo systemctl enable servicename 这里的servicename是需要开机自启动的服务名。例如下面设置nginx服务开…

    database 2023年5月22日
    00
  • mysql 数据库设计

    MySQL数据库设计是一个非常重要的话题,在设计MySQL数据库时需要考虑多种因素,包括表结构、数据类型、索引、关系等。以下是MySQL数据库设计的一个完整攻略。 步骤一:明确需求 对于任何一个数据库设计,必须首先明确需求。在这个步骤中,您需要与业务人员或客户一起工作,了解他们所需要的数据。通常,需要回答以下问题: 数据库的主要目的是什么? 哪些实体需要进行…

    database 2023年5月19日
    00
  • SQL MSSQL 常用代码大全

    SQL MSSQL 常用代码大全攻略 一、什么是MSSQL? MSSQL是一种关系型数据库管理系统,是微软公司提供的一种数据库系统。它可以用于存储、查询和管理数据,并提供多种高级功能,如事务处理、复制和存储过程等。 二、MSSQL 常用代码大全 以下是一些MSSQL常用的代码片段: 1.创建数据库 CREATE DATABASE database_name;…

    database 2023年5月21日
    00
  • MySQL 表数据的导入导出操作示例

    MySQL是一款广泛使用的开源关系型数据库管理系统,提供了丰富的数据管理功能,其中包括表数据的导入导出。下面是MySQL 表数据的导入导出操作示例的完整攻略。 导出表数据 要导出表数据,可以使用MySQL提供的mysqldump工具,其语法如下: $ mysqldump -u [用户名] -p [密码] [数据库名] [表名] > [导出文件路径] 如…

    database 2023年5月22日
    00
合作推广
合作推广
分享本页
返回顶部