oracle sql 函数大全

2025-02-23

Oracle SQL 函数大全

Oracle SQL 提供了丰富的函数,用于处理各种数据类型和执行复杂的计算。本文将深入探讨这些函数的分类、用途以及具体的使用方法。

1. 数值函数

数值函数主要用于处理数值类型的数据,包括基本的算术运算和一些特殊的数学计算。

-- 绝对值函数

SELECT ABS(-10) FROM dual;

-- 平方根函数

SELECT SQRT(16) FROM dual;

-- 取整函数

SELECT FLOOR(3.7) FROM dual;

SELECT CEIL(3.7) FROM dual;

SELECT ROUND(3.7) FROM dual;

-- 四舍五入到指定小数位数

SELECT ROUND(3.14159, 2) FROM dual;

-- 最大值和最小值函数

SELECT GREATEST(10, 20, 30) FROM dual;

SELECT LEAST(10, 20, 30) FROM dual;

2. 字符函数

字符函数用于处理字符串类型的数据,包括字符串的连接、截取、转换等操作。

-- 字符串长度函数

SELECT LENGTH('Hello World') FROM dual;

-- 大小写转换函数

SELECT UPPER('hello world') FROM dual;

SELECT LOWER('HELLO WORLD') FROM dual;

-- 字符串连接函数

SELECT CONCAT('Hello', ' World') FROM dual;

-- 字符串截取函数

SELECT SUBSTR('Hello World', 1, 5) FROM dual;

-- 字符串替换函数

SELECT REPLACE('Hello World', 'Hello', 'Hi') FROM dual;

3. 日期函数

日期函数用于处理日期和时间类型的数据,包括日期的加减、格式化等操作。

-- 当前日期函数

SELECT SYSDATE FROM dual;

-- 日期加减函数

SELECT ADD_MONTHS(SYSDATE, 2) FROM dual;

SELECT ADD_DAYS(SYSDATE, 10) FROM dual;

-- 日期格式化函数

SELECT TO_CHAR(SYSDATE, 'YYYY-MM-DD HH24:MI:SS') FROM dual;

-- 日期转换函数

SELECT TO_DATE('2023-10-01', 'YYYY-MM-DD') FROM dual;

4. 转换函数

转换函数用于在不同数据类型之间进行转换,包括数值与字符串、日期与字符串之间的转换。

-- 数值转换为字符串

SELECT TO_CHAR(123.45, '999.99') FROM dual;

-- 字符串转换为数值

SELECT TO_NUMBER('123.45', '999.99') FROM dual;

-- 日期转换为字符串

SELECT TO_CHAR(SYSDATE, 'YYYY-MM-DD') FROM dual;

-- 字符串转换为日期

SELECT TO_DATE('2023-10-01', 'YYYY-MM-DD') FROM dual;

5. 分析函数

分析函数用于执行复杂的数据分析,如聚合、窗口函数等。

-- 聚合函数

SELECT AVG(salary), MAX(salary), MIN(salary) FROM employees;

-- 窗口函数

SELECT employee_id, salary, AVG(salary) OVER (PARTITION BY department_id) FROM employees;

6. 集合函数

集合函数用于处理集合类型的数据,如集合的合并、交、差等操作。

-- 集合合并

SELECT * FROM (SELECT 1, 2, 3 FROM dual UNION SELECT 4, 5, 6 FROM dual);

-- 集合交

SELECT * FROM (SELECT 1, 2, 3 FROM dual INTERSECT SELECT 2, 3, 4 FROM dual);

-- 集合差

SELECT * FROM (SELECT 1, 2, 3 FROM dual MINUS SELECT 2, 3, 4 FROM dual);

通过深入了解这些Oracle SQL函数,您将能够更有效地处理数据,提高数据库查询的灵活性和准确性。掌握这些函数的应用,将为您的数据库管理和数据分析工作带来极大的便利。

标签:
流量卡