`
Johnny_GZ
  • 浏览: 179852 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

Oracle常用函数

阅读更多
--常用函数--
一、-字符串函数 
--1、lower upper
--注意在 Oracle 中变量和列的名称不区分大小写但是数据区分
--正确 select empno,ename,JOB,Mgr from emp where ename='SCOTT';
--错误.. select empno,ename,JOB,Mgr from emp where ename='scott';
--2、INITCAP函数
--作用将字符串转换成混合大小写每一个单词的开始都是一个大写字母
--      其余字符转换成小写字母(改变的只是当前显示格式) select empno,initcap(ename) from emp;
/*
3、SUBSTR函数 作用取子串函数 格式substr(C,P,L) 其中C 表示字符串P 表示要提取的起始的字符串的位置从1开始                           L 表示提取的长度。如果 P 为负值表示从字符串的                           最后一位倒着向前取。 */
select substr('I Love this game',3,4) sub from dual;
-- Love select substr('I Love this game',-3,2) sub from dual;
-- am select substr('I Love this game',-3,-2) sub from dual;
--L<=0时无结果
4、--LENGTH函数
--作用确定要分析的字符串的长度 select ename,length(ename) L0,sal,length(sal) L1 from emp;
5、--LPAD函数       
--作用用于字符串填充。填充的是字符串左侧的区域。
6、--RPAD函数       
--作用填充的是字符串右侧的区域。
select lpad(ename,6,'*') from emp;--ename 长度不够 6 时在左侧填充'*' 如*SMITH select rpad(ename,6,'*') from emp;--ename 长度不够 6 时在右侧填充'*' 如SMITH*
7、--LTRIM函数
8、--RTRIM函数
9、--TRIM函数
select length('   love   game  '),           --相当于('   love   game  ')的长度       
length(ltrim('   love   game  ')),           --相当于('love   game  ')的长度       
length(rtrim('   love   game  ')),           --相当于('   love   game')的长度       
length(trim('   love   game  ')) from dual;  --相当于('love   game')的长度 
10、--replace函数
--作用用于字符串的替换
--格式replace(C,S,R) 其中C 表示将处理的字符串S 表示想要查找的字符串
--                        R 表示将要替换的字符串。类似于”查找与替换“功能。
update emp set ename = upper(ename);
select replace(ename,'A','a') from emp;
select replace(ename,'a','A') from emp;
11、--concat函数
--作用字符串连接函数 || select concat(concat(ename,' '),job) NJ from emp; select ename||' '||job from emp;
12、--instr函数
--作用确定需要查找的字符串在给定字符串的起始位置找不到返回0
select instr('I Love this game','thi') from dual;
select instr('I Love this game','toi') from dual;

 
二、--数字函数—   
1、-- round 函数
-- 作用用来将数字四舍五入的指定的精度 select round(3.1415926,2) from dual;
--小数点后  保留2位 select round(3.1415926,3) from dual; select round(-3.5) from dual;
--注意 结果为-4与JAVA中不同在JAVA中 相当于 floor(x+0.5) 即 floor(-3.5+0.5) 值为-3 
2、--trunc 函数
--作用用来将数字字段截断为指定的精度。
--格式TRUNC(N,P)  select trunc(3.7777,2) num from dual;
--结果为3.77 select -54.75 n1,ceil(-54.75) n2,floor(-54.75) n3 from dual; 
--结果为-54.75  -54   -55  

三、--日期函数
-- select sysdate from dual; 
-- sysdate 为系统当前时间  dual 为系统临时表 select sysdate from emp;
-- 重复显示 select distinct sysdate from dual;
--to_date 日期转换函数
--日期格式元素的值
--MONTH  全部写出的月份名称添加空格达到9个字符的总宽度 APRIL
--MON  月份名称的三个字母简写     APR
--MM  月份的两位数字值     04
--RM  罗马数字的月份      IV
--D             一周中某一天的数值
--DD   一月中某一天的数值
--DDD           一年中某一天的数值
--DAY           一周中某一天的名称添加空格达到9个字符的宽度  Wednesday
--DY  一周中某一天的三个字母简写    WED
--YYYY  显示4位的年份
--YYY、YY、Y    显示年份的最后三位、最后两位或者最后一位
--YEAR          全部写出年份
--B.C. 或者 A.D. insert into emp2(empno,deptno,hiredate) values(9527,10,to_date('1993-1-1','yyyy-mm-DD'));    
--1993-1-1 insert into emp2(empno,deptno,hiredate) values(9528,10,to_date('1993-1-1','yyyy"-"mm"-"DD'));
--1993-1-1 insert into emp2(empno,deptno,hiredate) values(9529,10,to_date('1993年1-1','yyyy"年"mm-DD'));
--1993-1-1
--months_between 函数  前时间-后时间 select months_between(sysdate,to_date('2010-11-30','YYYY-MM-DD')) N from dual;
--  12 select months_between(to_date('2010-11-30','YYYY-MM-DD'),sysdate) N from dual;
--  -12 select months_between(sysdate,to_date('2010-11-10','YYYY-MM-DD')) N from dual;
--  12.6657638888889
-- select sysdate+2 from dual;
-- 结果系统当前时间两天后的时间
 
--nvl函数   nvl函数
--作用可以使用 nvl 函数来解决对可能包含 null 值的字段执行数学运算时导致的问题。
--      在Oracle9ii为internet中null 值不等于空格或者0.在计算中使用 null 值
--      时结果是 null 值。nul 函数使用一个值来代替所有的 null 值。 
select ename,sal,comm,sal+comm from emp;
--当 comm 为 null 值时sal+comm 也为 null 值
-- select ename,sal,nvl(comm,0),sal+nvl(comm,0) from emp;
-- conn 为 null 值时comm = 0,comm 不为 null 值时 comm = comm select ename,sal,nvl(comm,0),sal+nvl2(comm,100,10) from emp;
-- comm 为 null 值时comm = 10comm 不为 null 值时 comm = 100 
--to_char函数
select trim(3.14||' ') from dual; select to_char(sysdate,'yyyy-mm-dd') from dual;     
--  2011-11-30 select to_char(sysdate,'yyyy"-"mm"-"dd') from dual; 
--  2011-11-30 select to_char(sysdate,'yyyy"年"mm"月"dd') from dual;
--  2011年11月30 
--to_number();
select to_number('003000.00','999999.00') from dual;
-- 3000 select to_number('003000.00','000000.00') from dual;
-- 3000
select to_number('003000.00','999999.99') from dual;
-- 3000 
-- 9 显示数字并且忽略前导的 0
-- 0 显示数字不忽略前导的 0
select to_char(03000,'999999.99') from dual;         
--   3000.00 用空格代替 select to_char(03000,'000000.00') from dual;         
-- 003000.00

--case...when...then
--简单Case函数 
CASE sex  WHEN '1' THEN '男'  WHEN '2' THEN '女'  ELSE '其他' END 
--Case搜索函数 
CASE
WHEN sex = '1' THEN '男'  WHEN sex = '2' THEN '女'  ELSE '其他' END 

--decode
select decode(sex, 'M', 'Male', 'F', 'Female', 'Unknown')from   employees;

--distinct与count一起用
select count( distinct user_name) from department_user;
括号中不能使用distinct *

分享到:
评论

相关推荐

    oracle常用函数大全

    Oracle 常用函数大全 Oracle 中有许多常用函数,以下是其中一些: 字符函数 1. ASCII:返回与指定的字符对应的十进制数。例如:`SELECT ASCII('A') FROM DUAL;` 返回 65。 2. CHR:给出整数,返回对应的字符。...

    Oracle常用函数大全

    Oracle常用函数大全 Oracle常用函数大全是一个非常重要的知识点,涵盖了许多实用的函数,例如日期函数、字符串函数、聚合函数等。这些函数可以帮助开发者更方便地进行数据库操作和数据分析。本文将详细介绍Oracle...

    Oracle常用函数集

    ### Oracle常用函数集详解 #### 一、ASCII函数 **功能描述:** ASCII函数用于返回与指定字符相对应的十进制数值。 **语法格式:** ```sql ASCII('字符') ``` **示例:** ```sql SELECT ASCII('A') A, ASCII('a') ...

    Oracle常用函数.pdf

    ### Oracle常用函数详解 #### 一、概述 Oracle 数据库提供了丰富的内置函数,极大地提高了 SQL 语句在处理数据时的灵活性与效率。这些函数主要分为两大类:单行函数和多行函数(也称为聚合函数)。单行函数通常...

    Oracle常用函数.txt

    以下是从“Oracle常用函数.txt”文件中提炼出的关键知识点,旨在为初学者提供深入理解与实践的指导。 ### ASCII() 和 CHR() - **ASCII()** 函数用于返回一个字符的ASCII码值。例如,`ASCII('A')` 返回的是65,而 `...

    ORACLE常用函数总结(含与SQL SERVER比较)

    ORACLE常用函数总结,与SQL SERVER对比,防止混淆,更容易记忆。

    oracle常用函数

    oracle常用函数oracle常用函数oracle常用函数oracle常用函数oracle常用函数oracle常用函数oracle常用函数

    oracle常用函数总结

    以下是对标题和描述中提到的Oracle常用函数的详细总结: 1. ASCII 函数:这个函数返回一个字符对应的ASCII码,即十进制数字。例如,`ASCII('A')`返回65,`ASCII(' ')`返回32(空格的ASCII码)。 2. CHR 函数:与...

    sql_mysql_oracle常用函数

    sql,mysql,oracle常用的函数

    hive和oracle常用函数对照表.xlsx

    hive和oracle常用函数对照,包含常用的函数分类 字符函数 数值函数 日期函数 聚合函数 转换函数 其他 增加的hive函数对比,只需要2个积分喔

    oracle 常用函数下载

    Oracle数据库中的常用函数是数据库管理员和开发人员在处理数据时不可或缺的工具。这些函数极大地提高了数据处理的效率和灵活性。以下是一些常见的Oracle分析函数及其用法: 1. **开窗函数(Over)**: 开窗函数允许...

    Oracle常用函数和使用方法

    ### Oracle常用函数与使用方法详解 #### 一、Oracle SQL函数概述 在Oracle数据库中,SQL函数被广泛用于处理各种数据类型,包括数值、字符、日期等,它们能够帮助我们更高效地进行数据检索和分析。本文将详细介绍...

    oracle常用函数chm版

    "Oracle常用函数chm版"是一个集合了多种Oracle数据库常用函数的参考资源,主要包含以下几个方面: 1. **数值型函数**:这类函数主要用于处理整数、浮点数等数值类型的数据。例如,`ROUND`函数用于四舍五入,`TRUNC`...

    oracle常用函数举例

    3.CONCAT:连接两个字符串; SQL&gt; select concat('010-','88888888')||'转23' 张三电话 from dual; 张三电话 ...SQL&gt; select instr('oracle traning','ra',1,2) instring from dual; INSTRING ---------

    oracle 常用函数 sqlplus基本命令

    本文将深入探讨"Oracle常用函数"以及"SQL*Plus基本命令"这两个关键领域,旨在帮助你提升在数据库操作中的效率。 一、Oracle常用函数 1. 长度函数`LENGTH` `LENGTH`函数用于计算字符串的字符数,不区分字符类型(如...

    oracle 常用函数大全

    本篇文章主要探讨Oracle常用函数,特别是涉及字符串处理、日期处理以及数据处理的函数。 1. **字符串处理函数**: - `SUBSTR(string, start_position, length)`: 从指定的字符串`string`中提取子字符串,从`start_...

    oracle常用函数 CHM

    本文将基于"Oracle常用函数 CHM"这个资源,详细解析一些Oracle数据库中常见的函数及其应用,帮助你更好地理解和掌握Oracle SQL查询语言。 1. **字符串处理函数** - `UPPER()` 和 `LOWER()`:这两个函数用于将字符...

    110个oracle常用函数.pdf

    Oracle创建函数是通过PL/SQL自定义编写的,通过关键字function按照自己的需求把复杂的业务逻辑封装进PL/SQL函数中,函数提供一个返回值,返回给使用者。这样使用者就不需要去理解业务逻辑,把PL/SQL函数中的业务逻辑...

Global site tag (gtag.js) - Google Analytics