`
m654352
  • 浏览: 26929 次
社区版块
存档分类
最新评论

oracle一些函数

 
阅读更多
-- 取模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 ' &nbsp; akwolf &nbsp; &nbsp;') 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 ' &nbsp; akwolf &nbsp; &nbsp;') 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 递归函数介绍 Oracle 递归函数是一种特殊的PL/SQL函数,可以用于解决复杂的树形结构查询问题。递归函数可以自我调用,以便遍历树形结构的每个节点,直到达到停止条件。 在 Oracle 中,递归函数的定义语法...

    oracle自定义日期函数

    Oracle 自定义日期函数 Oracle 日期处理函数是数据库管理系统中非常重要的一部分,最近看到有人在做 T-...然而,DATEADD 函数也存在一些限制,例如只能添加指定的时间间隔到日期中,不能用于其他类型的日期处理操作。

    ORACLE常用函数功能及演示

    ORACLE内置函数,相当于C语言中的库函数,提供了常规数据库编程中所需的绝大多数基本功能,并且通过函数的组合或嵌套使用,可以发挥其强大的功能。由于这些内置函数都是由ORACLE公司的编程大家所写,而且其执行代码...

    oracle函数大全 oracle函数大全

    以下是关于Oracle函数的一些详细说明: 1. ASCII函数:ASCII函数返回与输入字符相对应的ASCII码,即十进制数字。例如,ASCII('A')返回65,ASCII('a')返回97。 2. CHR函数:CHR函数根据提供的整数返回对应的字符。...

    ORACLE分析函数教程

    ### Oracle分析函数详解 #### 一、Oracle分析函数概述 Oracle分析函数是在处理大量数据时极为有用的一套工具,主要用于在线分析处理(OLAP)场景。这类函数可以在多个级别上进行数据聚合,并支持复杂的排序、分组...

    ORACLE函数介绍 全系列中文

    oracle函数介绍 1 著名函数之单值函数 pdf oracle函数介绍 2 非著名函数之单值函数 pdf oracle函数介绍 3 著名函数之聚合函数 pdf oracle函数介绍 4 非著名函数之聚合函数 pdf oracle函数介绍 5 分析函数简述 ...

    oracle 函数大全 参考函数 手册 速查 chm格式

    Oracle函数是数据库操作中的核心组成部分,它们允许开发人员和DBA执行各种计算、转换、查询和数据处理任务。手册中可能涵盖了以下几类函数: 1. 数学函数:如ABS(取绝对值)、MOD(取模)、ROUND(四舍五入)等,...

    ORACLE CRC32函数

    ### ORACLE CRC32函数详解 #### 一、概述 在Oracle数据库中,`CRC32`函数是一种非常实用的功能,主要用于将字符类型的数据转换为一个唯一的数字类型,这一过程通常被称为散列(Hash)。通过该函数,可以方便地生成...

    oracle函数大全.chm

    oracle函数大全.chm oracle函数大全.chm

    Oracle函数.chm

    Oracle函数.chm

    oracle函数大全(CHM格式).rar

    "Oracle函数大全(CHM格式).rar"这个压缩包显然包含了关于Oracle数据库中各种函数的详细信息,对于学习和查询Oracle函数是非常宝贵的资源。 CHM(Compiled Help Manual)格式是一种由Microsoft开发的帮助文件格式...

    Oracle函数返回表

    Oracle自定义函数返回一张表。主要用于生成一张等时间间隔的表数据。

    oracle内置函数学习

    Oracle还提供了一些统计函数,如AVG()计算平均值,SUM()求和,COUNT()统计数量,MIN()和MAX()找出最小值和最大值。这些统计函数在数据分析和报表生成中发挥着关键作用。 在数据库管理工具方面,Oracle SQL ...

    Oracle sql 函数大全 比较常用的一些 函数 整理

    本文将对 Oracle SQL 函数大全进行分类和讲解,涵盖字符串函数、字符转换函数、去空格函数、取子串函数、字符串比较函数、字符串操作函数等多种函数。 一、字符转换函数 字符转换函数是将字符或字符串从一种形式...

    oracle分析函数文档

    ### Oracle分析函数详解 #### 一、概述 Oracle分析函数是一种强大的工具,它允许用户对分组数据执行复杂的计算,并且结果可以根据特定条件进行动态调整。这种灵活性使得Oracle分析函数在处理复杂的数据集时非常...

    oracle管道函数用法

    ### Oracle管道函数详解 #### 一、概述 Oracle管道函数是一种特殊类型的函数,它能够返回一个数据集合,并且能够在函数执行的过程中逐步返回结果,而不仅仅是最后的结果。这种特性使得管道函数非常适合于处理大量...

    oracle分析函数,窗口函数,报表函数

    Oracle 分析函数、窗口函数和报表函数是数据库查询和数据分析中的关键工具,尤其在复杂的OLAP(在线分析处理)系统中发挥着重要作用。在Oracle数据库中,这些功能提供了对大量数据进行高效处理的能力,帮助用户生成...

    oracle分析函数.doc

    Oracle分析函数是数据库管理系统Oracle中一组强大的工具,用于处理集合数据,特别是在复杂的报表和数据分析场景中。它们允许用户在单个SQL查询中执行聚合操作,同时保持行的原始顺序,这是传统的GROUP BY函数无法...

    Oracle内置函数大全

    Oracle内置函数是数据库管理系统Oracle 8i中的一个重要组成部分,这些函数极大地丰富了SQL查询和数据处理的能力。在Oracle中,日期格式和数字格式的说明符是处理数据的关键工具,它们决定了如何显示和解析日期和数字...

Global site tag (gtag.js) - Google Analytics