-- 取模MOD(n1,n2)
SELECT MOD(25,3) FROM DUAL ;
-- 四舍五入ROUND(n1[,n2])
SELECT ROUND(23.56) r,FLOOR(23.56) f,CEIL(23.56) c FROM DUAL ;
SELECT ROUND(23.56,1) r FROM DUAL ;
-- 截取TRUNC(n1[,n2])
SELECT TRUNC(23.56) FROM DUAL ;
SELECT TRUNC(23.56,1) FROM DUAL ;
-- 求对数
SELECT LOG(1.1,1.2) FROM DUAL ;
-- 求平方
SELECT POWER(2,3) FROM DUAL ;
-- 求平方根
SELECT SQRT(4) FROM DUAL ;
-- 字符转大写
SELECT UPPER('com.akwolf.upper') FROM DUAL ;
-- 字符转小写
SELECT LOWER('COM.AKWOLF.LOWER') FROM DUAL ;
-- 单词首字母大写
SELECT INITCAP('com.akwolf.initcap') FROM DUAL ;
-- 左填充
SELECT LPAD('akwolf',10,'$') FROM DUAL ;
-- 右填充
SELECT RPAD('akwolf',10,'$') FROM DUAL ;
-- 截取首尾空格
SET SERVEROUT ON ;
DECLARE
t_str VARCHAR2(100) ;
BEGIN
SELECT TRIM(' akwolf ') INTO t_str FROM DUAL ;
DBMS_OUTPUT.PUT_LINE('F--->'||t_str||'<----E') ;
END;
-- 截取头部分的空格
SET SERVEROUT ON ;
DECLARE
t_str VARCHAR2(100) ;
BEGIN
SELECT TRIM(LEADING ' ' FROM ' akwolf ') INTO t_str FROM DUAL ;
DBMS_OUTPUT.PUT_LINE('F--->'||t_str||'<----E') ;
END;
-- 截取尾部分的空格
SET SERVEROUT ON ;
DECLARE
t_str VARCHAR2(100) ;
BEGIN
SELECT TRIM(TRAILING ' ' FROM ' akwolf ') INTO t_str FROM DUAL ;
DBMS_OUTPUT.PUT_LINE('F--->'||t_str||'<----E') ;
END;
-- 逐字符替换
SELECT TRANSLATE('AKWOLF','AO','$%') FROM DUAL ;
-- 截取字符串(第二个参数为负则从右往左数的位置)
SELECT SUBSTR('AKWOLF',2,3) FROM DUAL ;
-- 根据ASCII码返回字符值
SELECT CHR(65) FROM DUAL ;
-- 连接两个字符串
SELECT CONCAT('COM','AKWOLF') FROM DUAL ;
-- INSTR(c1,c2[,n1[,n2]]) :返回c2在c1中位置
SELECT INSTR('ABCDABCD','B') FROM DUAL ;
SELECT INSTR('ABCDABCD','B',3) FROM DUAL ;
SELECT INSTR('ABCDABCD','B',-1) FROM DUAL ;
-- LENGTH返回指定字符串的长度
SELECT LENGTH('AKWOLF张') FROM DUAL ;
-- 通过字符取得ASCII码
SELECT ASCII('张') FROM DUAL ;
-- ADD_MONTHS()返回指定日期月份+n之后的值
SELECT ADD_MONTHS(SYSDATE,10) FROM DUAL ;
-- CURRENT_DATE当前时间
SELECT CURRENT_DATE,SYSDATE,SYSTIMESTAMP(4) FROM DUAL ;
-- 指定时间的月最后一天
SELECT LAST_DAY(SYSDATE) FROM DUAL ;
-- NEXT_DAY(d,n)返回指定日期后第一个n的日期,n为一周中的某一天。
SELECT NEXT_DAY(SYSDATE,'星期五') FROM DUAL ;
-- 返回两个月之间的月份差
SELECT MONTHS_BETWEEN(SYSDATE,ADD_MONTHS(SYSDATE,10)) FROM DUAL ;
-- 取时间近似值
SELECT ROUND(SYSDATE,'HH24') FROM DUAL ;
-- 截取时间
SELECT TRUNC(SYSDATE,'MM') FROM DUAL ;
-- TO_CHAR()转化varchar2,nchar等到char类,转化时间,数字到char
SELECT TO_CHAR('AABBCC') FROM DUAL ;
SELECT TO_CHAR(SYSDATE,'YYYY-MM-DD HH24:MI:SS') FROM DUAL ;
SELECT TO_CHAR(100,'L99G999D99MI') FROM DUAL ;
-- TO_DATE(c[,fmt[,nls]])将字符类型转化为时间类型
SELECT TO_DATE(54557,'J') FROM DUAL ;
SELECT TO_NUMBER(TO_CHAR(TO_DATE('9999-12-31','yyyy-mm-dd'),'j')) FROM DUAL;
-- DECODE条件判断
SELECT DECODE('A','A','AKWOLF','C','COM','DEFAULT') FROM DUAL ;
-- 取得序列中的最大值和最小值
SELECT GREATEST(45,1,5,89) max,LEAST(45,1,5,89) min FROM DUAL ;
-- NULLIF逻辑等价于:CASE WHEN c1 = c2 THEN NULL ELSE c1 END
SELECT NULLIF(3,4),NVL(NULLIF('a','a'),'null') FROM DUAL ;
-- NVL2(c1,c2,c3)
SELECT NVL2(7,1,3) FROM DUAL ;
SELECT NVL2(NULL,1,3) FROM DUAL ;
-- SYS_CONNECT_BY_PATH(col,c)该函数只能应用于树状查询
SELECT SYS_CONNECT_BY_PATH(ename,'-->') FROM emp START WITH empno = 7369 CONNECT BY PRIOR MGR=EMPNO ;
-- SYS_CONTEXT(c1,c2[,n]) :将指定命名空间c1的指定参数c2的值按照指定长度n截取后返回。
SELECT SYS_CONTEXT('USERENV','SESSION_USER') FROM DUAL ;
SELECT SYS_CONTEXT('USERENV','CURRENT_SCHEMA') FROM DUAL ;
SELECT SYS_CONTEXT('USERENV','IP_ADDRESS') FROM DUAL ;
SELECT SYS_CONTEXT('USERENV','OS_USER') FROM DUAL ;
-- AVG求平均值
SELECT ename,empno,AVG(sal) FROM emp GROUP BY empno,ename ;
-- COUNT
SELECT COUNT(*) FROM emp ;
-- MAX,MIN,SUM
SELECT MAX(sal) max,MIN(sal) min,SUM(sal) sum FROM emp ;
--DENSE_RANK(n1[,n2]...) WITHIN GROUP (ORDER BY col1 [desc|asc] [nulls first|last] [,col2 [desc|asc] [nulls first|last]]...) :计算指定值在记录集中的排序值。
SELECT DENSE_RANK(14) WITHIN GROUP (ORDER BY empno) FROM emp ;
分享到:
相关推荐
Oracle 递归函数介绍 Oracle 递归函数是一种特殊的PL/SQL函数,可以用于解决复杂的树形结构查询问题。递归函数可以自我调用,以便遍历树形结构的每个节点,直到达到停止条件。 在 Oracle 中,递归函数的定义语法...
Oracle 自定义日期函数 Oracle 日期处理函数是数据库管理系统中非常重要的一部分,最近看到有人在做 T-...然而,DATEADD 函数也存在一些限制,例如只能添加指定的时间间隔到日期中,不能用于其他类型的日期处理操作。
ORACLE内置函数,相当于C语言中的库函数,提供了常规数据库编程中所需的绝大多数基本功能,并且通过函数的组合或嵌套使用,可以发挥其强大的功能。由于这些内置函数都是由ORACLE公司的编程大家所写,而且其执行代码...
以下是关于Oracle函数的一些详细说明: 1. ASCII函数:ASCII函数返回与输入字符相对应的ASCII码,即十进制数字。例如,ASCII('A')返回65,ASCII('a')返回97。 2. CHR函数:CHR函数根据提供的整数返回对应的字符。...
### Oracle分析函数详解 #### 一、Oracle分析函数概述 Oracle分析函数是在处理大量数据时极为有用的一套工具,主要用于在线分析处理(OLAP)场景。这类函数可以在多个级别上进行数据聚合,并支持复杂的排序、分组...
oracle函数介绍 1 著名函数之单值函数 pdf oracle函数介绍 2 非著名函数之单值函数 pdf oracle函数介绍 3 著名函数之聚合函数 pdf oracle函数介绍 4 非著名函数之聚合函数 pdf oracle函数介绍 5 分析函数简述 ...
Oracle函数是数据库操作中的核心组成部分,它们允许开发人员和DBA执行各种计算、转换、查询和数据处理任务。手册中可能涵盖了以下几类函数: 1. 数学函数:如ABS(取绝对值)、MOD(取模)、ROUND(四舍五入)等,...
### ORACLE CRC32函数详解 #### 一、概述 在Oracle数据库中,`CRC32`函数是一种非常实用的功能,主要用于将字符类型的数据转换为一个唯一的数字类型,这一过程通常被称为散列(Hash)。通过该函数,可以方便地生成...
oracle函数大全.chm oracle函数大全.chm
Oracle函数.chm
"Oracle函数大全(CHM格式).rar"这个压缩包显然包含了关于Oracle数据库中各种函数的详细信息,对于学习和查询Oracle函数是非常宝贵的资源。 CHM(Compiled Help Manual)格式是一种由Microsoft开发的帮助文件格式...
Oracle自定义函数返回一张表。主要用于生成一张等时间间隔的表数据。
Oracle还提供了一些统计函数,如AVG()计算平均值,SUM()求和,COUNT()统计数量,MIN()和MAX()找出最小值和最大值。这些统计函数在数据分析和报表生成中发挥着关键作用。 在数据库管理工具方面,Oracle SQL ...
本文将对 Oracle SQL 函数大全进行分类和讲解,涵盖字符串函数、字符转换函数、去空格函数、取子串函数、字符串比较函数、字符串操作函数等多种函数。 一、字符转换函数 字符转换函数是将字符或字符串从一种形式...
### Oracle分析函数详解 #### 一、概述 Oracle分析函数是一种强大的工具,它允许用户对分组数据执行复杂的计算,并且结果可以根据特定条件进行动态调整。这种灵活性使得Oracle分析函数在处理复杂的数据集时非常...
### Oracle管道函数详解 #### 一、概述 Oracle管道函数是一种特殊类型的函数,它能够返回一个数据集合,并且能够在函数执行的过程中逐步返回结果,而不仅仅是最后的结果。这种特性使得管道函数非常适合于处理大量...
Oracle 分析函数、窗口函数和报表函数是数据库查询和数据分析中的关键工具,尤其在复杂的OLAP(在线分析处理)系统中发挥着重要作用。在Oracle数据库中,这些功能提供了对大量数据进行高效处理的能力,帮助用户生成...
Oracle分析函数是数据库管理系统Oracle中一组强大的工具,用于处理集合数据,特别是在复杂的报表和数据分析场景中。它们允许用户在单个SQL查询中执行聚合操作,同时保持行的原始顺序,这是传统的GROUP BY函数无法...
Oracle内置函数是数据库管理系统Oracle 8i中的一个重要组成部分,这些函数极大地丰富了SQL查询和数据处理的能力。在Oracle中,日期格式和数字格式的说明符是处理数据的关键工具,它们决定了如何显示和解析日期和数字...