`

公司内部oracle培训小结1

阅读更多

1.格式:abs(number)   即   abs(数值)
返回数值的绝对值。
例:   abs(5)   返回  5
       abs(-5)   返回  5
 
2.格式:ceil(number)   即   ceil(数值)
根据输入值返回一个数值,输入参数可以是非整数,但返回结果则是大于等于输入参数的最小整数。
例:   ceil(5.1)   返回  6
       abs(-5.2)   返回  -5

3.floor(n)取小于等于数值n的最大整数
select floor(9.5) from dual;
FLOOR(9.5)
----------
         9

4.MOD(n1,n2)
返回一个n1除以n2的余数
SQL> select mod(10,3),mod(3,3),mod(2,3) from dual;
MOD(10,3)  MOD(3,3)  MOD(2,3)
--------- --------- ---------
        1         0         2
5.ROUNDTRUNC
按照指定的精度进行舍入
SQL> select round(55.5),round(-55.4),trunc(55.5),trunc(-55.5) from dual;
ROUND(55.5) ROUND(-55.4) TRUNC(55.5) TRUNC(-55.5)
----------- ------------ ----------- ------------
         56          -55          55          -55
select round(123.456, 0) from dual;          回传 123
select round(123.456, 1) from dual;          回传 123.5
select round(123.456, 2) from dual;          回传 123.46
trunc(n,f)
select trunc(122.345,-2) from dual
100
select trunc(2.345,-1) from dual
0
select trunc(sysdate) from dual  --2011-3-18  今天的日期为2011-3-18
select trunc(sysdate, 'mm')   from   dual  --2011-3-1    返回当月第一天.
select trunc(sysdate,'yy') from dual  --2011-1-1       返回当年第一天
select trunc(sysdate,'dd') from dual  --2011-3-18    返回当前年月日
select trunc(sysdate,'yyyy') from dual  --2011-1-1   返回当年第一天
select trunc(sysdate,'d') from dual  --2011-3-13 (星期天)返回当前星期的第一天
select trunc(sysdate, 'hh') from dual   --2011-3-18 14:00:00   当前时间为14:41  
select trunc(sysdate, 'mi') from dual  --2011-3-18 14:41:00  
TRUNC()函数没有秒的精确

6.CONCAT
连接两个字符串;
SQL> select concat('010-','88888888')||'转23'  高乾竞电话 from dual;
高乾竞电话
----------------
010-88888888转23

7.小写函数:lower();
用法:比如将一个表的所有名称都小写:
select lower(t.ename) from scott.emp t
 
8.大写函数:upper();
用法:比如将一个表的所有名称都大写:
select upper(t.ename) from scott.emp t

9.lpad(String ,截取长度,添加的字符串)
select lpad('test',10) from dual;
将返回“    test”
select lpad('test',10,'ee') from dual;
结果将返回eeeeeetest。

10.ltrim(x,y) 函数是按照y中的字符一个一个截掉x中的字符,并且是从左边开始执行的,只要遇到y中有的字符, x中的字符都会被截掉, 直到在x的字符中遇到y中没有的字符为止函数命令才结束 .
LTRIM('109224323','109')
------------------------
224323
SQL> select ltrim('10900094323','109') from dual;
LTRIM('10900094323','109')
---------------------------
4323
 select LTRIM( 'Miss Liu', 'M is') result from dual;
RES
---
Liu

11.RTRIM
SELECT RTRIM('Mississippi','ip') test1,RTRIM('Rpadded ') test2 ,RTRIM

('Mississippi','sip') test3 FROM dual;
结果为:
test1 test3 test3
Mississ Rpadded M

12.SUBSTR(string,start,count)
取子字符串,从start开始,取count个
SQL> select substr('13088888888',3,8) from dual;
SUBSTR('
--------
08888888
substr('This is a test', 6, 2)     would return 'is'
substr('This is a test', 6)     would return 'is a test'
substr('TechOnTheNet', -3, 3)     would return 'Net'
substr('TechOnTheNet', -6, 3)     would return 'The'

13.REPLACE('string','s1','s2')
string   希望被替换的字符或变量
s1       被替换的字符串
s2       要替换的字符串
SQL> select replace('he love you','he','i') from dual;
REPLACE('H
----------
i love you

14.translate
select translate('123abc','2dc','4e') from dual;
因为from_string和to_string的位置是一一对应的,2对应4,d对应e,c没有对应的值,所以c应该会被删除。
结果是
143ab

15.instr( string1, string2 [, start_position [, nth_appearance ] ] )
参数为正,从左到右开始检索,如果此参数为负,从右到左检索,返回要查找的字符串在源字符串中的开始索引
从倒数第1个字符开始,搜索第1次出现子串的位置
SQL> select instr('oracleor','or', -1, 1) position from dual;
POSITION
----------
        7
从倒数第1个字符开始,搜索第2次出现子串的位置
SQL> select instr('oracleor','or', -1, 2) position from dual;
POSITION
----------
        1

16.add_months(time,months)
select add_months(sysdate,-6) from dual;
该查询的结果是当前时间半年前的时间
select add_months(sysdate,6) from dual;
该查询的结果是当前时间半年后的时间
SQL> select length('阿猪') from dual;
LENGTH('阿猪')
--------------
             2

17.lengthlengthb
SQL> select lengthb('阿猪') from dual;
LENGTHB('阿猪')
---------------
              4
区别:length求得是字符长度,lengthb求得是字节长度。

18.last_day
select last_day(sysdate) from dual
返回:2013/7/31 15:15:31

19.to_char
select to_char(sysdate,'day') from dual
返回:星期日
select to_char(sysdate,'d') from dual
返回:1
select to_char(23332344.45632,'fml99,999,999.99') from dual
返回:¥23,332,344.46
select to_char(0.45632,'fm999.99') from dual
返回:.46
select to_char(0.45632,'fm9990.99') from dual
返回:0.46

20.decode
DECODE(条件,值1,翻译值1,值2,翻译值2,...值n,翻译值n,缺省值)
DECODE(字段,比较1,值1,比较2,值2,.....,比较n,值n缺省值) 

21.nvlnvl2nullif
NVL2(expr1,expr2,expr3)
  功能:如果参数表达式expr1值为NULL,则NVL2()函数返回参数表达式expr3的值;如果参数表达式expr1值不为NULL,则NVL2()函数返回参数表达式expr2的值。

NVL( string1, replace_with)
  功能:如果string1为NULL,则NVL函数返回replace_with的值,否则返回string1的值,如果两个参数都为NULL ,则返回NULL。

nullif(表达式1,表达式2) 比较两个表达式是否相等
如果相等,则返回null
如果不相等,则返回表达式1
限制条件:表达式1 不能是null

22.row_number() over ([partition by col1] order by col2) ) as 别名
表示根据col1分组,在分组内部根据 col2排序
而这个“别名”的值就表示每组内部排序后的顺序编号(组内连续的唯一的),[partition by col1] 可省略。
查找各部门中薪水最高者
select * from
(select ename,job,deptno,sal,(row_number() over(partition by deptno order by sal desc))  rn from scott.emp) where rn=1;

分享到:
评论

相关推荐

    某知名IT企业内部oracle培训资料

    Oracle数据库是全球最广泛...总结,Oracle数据库在IT行业中扮演着至关重要的角色,无论是基础架构管理、数据安全,还是性能优化和高可用性,都需要深入了解和掌握。不断学习和实践,才能在这个领域中成为真正的专家。

    Oracle Portal Web开发

    1. **内容聚合**:Oracle Portal 支持整合来自不同系统的数据,包括内部应用、外部Web服务、文件系统等。 2. **个性化**:用户可以根据自己的需求定制门户页面,显示他们关心的信息和应用。 3. **角色与权限管理**:...

    oracle 查询优化改写

    总结,Oracle查询优化改写是一个涉及多方面技能的综合过程。理解数据库内部工作原理,结合实际业务场景,通过索引调整、查询改写、并行查询、临时表使用等手段,可以显著提升数据库性能。实践中,应持续监控和分析...

    Oracle SQL高级编程(资深Oracle专家力作,OakTable团队推荐)--随书源代码

    作者通过总结各自多年的软件开发和教学培训经验,与大家分享了掌握Oracle SQL所独有的丰富功能的技巧所在,内容涵盖SQL执行、联结、集合、分析函数、子句、事务处理等多个方面。读者可以学习到以下几个方面的技巧:...

    oracle性能优化资料大全(更全最深)

    主要包括:Oracle Database 10g性能调整与优化.pdf清晰版书籍,Oracle数据库内部培训资料,oracle专业优化文档,Oracle的SQL语句执行效率问题查找与解决方法文档,oracle性能优化总结文档,数据库设计方法文档,SQL...

    SQL语言内部培训讲义PPT

    总结,这份"SQL语言内部培训讲义PPT"是一份全面的SQL学习资料,不仅覆盖了SQL的基础语法,还特别关注了在实际数据库操作中常用的Oracle函数。通过阅读讲义、理解示例和完成练习,学习者能够扎实掌握SQL语言,提升...

    Oracle 9i(第一讲).pptx

    1. 熟悉Oracle的工作原理,理解其内部是如何存储、管理和处理数据的。 2. 学习Oracle数据库对象的创建和管理,如用户、表、视图等。 3. 掌握PL/SQL语言,用于进行数据库编程,包括游标、存储过程、存储函数、包和...

    员工管理系统(Oracle员工管理系统,附脚本)

    总结起来,Oracle员工管理系统结合了Oracle数据库的强大功能,提供了全面的员工信息管理服务。通过高效的数据维护、查询、统计和报表生成,企业可以提升人力资源管理效率,优化内部运营,从而在竞争激烈的市场环境中...

    Oracle数据库SQL基础-个人学习总结.pdf

    本PDF文档总结了Oracle数据库SQL的基础知识,适用于初学者进行自我学习或内部培训。 1. **基本语法** SQL语法是所有操作的基础,包括创建、查询、更新和删除数据。在Oracle中,SQL语句遵循一定的格式和规则,例如...

    Oracle优化日记:一个金牌DBA的故事.pdf

    在日记之间,作者还穿插了优化小技巧、每日点评等,总结了数据库优化常用的方法、工具和技巧。另外《Oracle优化日记:一个金牌DBA的故事》第一次详尽地披露了Oracle数据库内部存储结构,并公布了部分代码,对于有兴趣...

    ProC的内部培训资料

    总结来说,ProC是Oracle数据库开发的一个强大工具,通过结合C/C++的编程能力和SQL的数据处理能力,为开发高效、可靠的数据库应用提供了可能。熟悉并熟练运用ProC,能提升你在数据库应用开发领域的专业技能。

    代码 员工培训系统

    《员工培训系统》是一款专为企事业单位设计的代码化培训管理平台,旨在提升员工技能,优化企业内部培训流程。此系统结合了数据库技术,确保数据的高效存储与检索,能够顺畅运行,为用户提供稳定的服务。 一、系统...

    Oracle区域医疗解决方案之架构与方法论.rar

    总结来说,Oracle区域医疗解决方案通过集成的数据库、数据仓库、云计算技术和严格的安全机制,构建了一个高效、安全的医疗信息共享平台,促进了医疗服务的现代化和区域协作。同时,其强大的数据分析能力和标准化接口...

    基于JSP和Oracle的绩效量化系统设计.pdf

    总结,本文提出的基于JSP和Oracle的绩效量化系统设计,为企业提供了一套实用的员工绩效管理系统,通过量化管理提升工作效率和员工积极性。同时,对电力设备的维护和绝缘保护的讨论,也体现了系统设计时对实际运营...

    企业人事管理系统 数据库  JAVA

    总结来说,企业人事管理系统结合了JAVA的强大编程能力和ORACLE数据库的高效数据管理,实现了对企业人力资源的科学化、规范化管理。系统的开发涵盖了JAVA编程、数据库设计、性能优化等多个IT领域的知识,体现了信息...

    某集团项目建议书.docx

    文档详细介绍了Oracle公司的建议方案及其特点、优势,以及实施、培训和技术支持等方面的规划。 1. Oracle 建议方案概述: Oracle公司提出的方案是基于其成熟的企业级信息系统产品,旨在为托普集团构建一个高效、...

    R12 全球公司间设置

    Oracle E-Business Suite R12(简称R12)是Oracle公司的一款企业资源计划系统,它为企业提供了一整套集成的业务应用解决方案,涵盖了财务管理、供应链管理、项目管理等多个领域。在R12中,全球公司间设置是一项重要...

Global site tag (gtag.js) - Google Analytics