Oracle将函数大致分为单行函数,聚合函数和分析函数。

单行函数分为字符函数,日期函数,转换函数,数字函数,通用函数,decode函数

一.字符函数

1)大小写控制函数

01.Lower() 全部小写

--字符函数
--小写
select Lower ( 'HAPPY') from dual;

效果:

02.Upper()  全部大写

--大写
select Upper ('happy') from dual;

效果:

03.initcap()  首字母大写

--首字母大写
select initcap ('happy') from dual;

效果:

2)字符控制函数

01.concat()   拼接

--拼接
select concat('happy','boy') from dual;

效果:

02.substr()   截取字符

--截取字符串 位置从1开始
select substr('happyboy',6) from dual;

效果:

--要截取的字符,起始位置,取几个字符
select substr('happyboy',6,3) from dual;

效果:

03.length()和lengthb()

  --length('字符串'):字符个数统计
-- lengthb('字符串'):字节个数统计
select length('呵呵') 字符数,lengthb('呵呵') as 字节数 from dual;

效果:

04.instr()

--instr('大字符串','小字符串')返回小字符串在大字符串中出现的位置
select instr('happy hehe','he',2,2) "Instring" from dual;

select instr('happy hehe','he',-2,2) "Reversed Instring" from dual;

效果:

select instr('happy hehe','he',2,2) "Instring in bytes" from dual;

效果:

05.lpad()和rpad()

--lpad()和rpad()
select lpad('happy',10,'*') from dual;

效果:

二.日期函数

1)日期函数

01.两个日期相差的月数

select MONTHS_BETWEEN
(TO_DATE('02-02-1995','MM-DD-YYYY'),
TO_DATE('01-01-1995','MM-DD-YYYY')) "Months"
from dual;

效果:

02.向指定日期中加上若干月数

--向指定日期中加上若干月数
select TO_CHAR(ADD_MONTHS(hiredate,1),'DD-MON-YYYY') "Next month"
from emp
where ENAME='JONES';

效果:

2)日期相减

01.两个日期间的天数

--两个日期间的天数
select floor(sysdate-to_date('','yyyymmdd')) from dual;

效果:

02.两个日期相差的月数

--两个日期相差的月数
select months_between(sysdate,to_date('','yyyymmdd')) from dual;

效果:

三。转换函数

1)隐式转换

--转换函数
--隐式函数
select * from emp
where hiredate='17-12月-80';

效果:

2)显示转换

01.to_char()对日期的转换

--显式函数
--01.to_char()对日期的转换
select to_char(sysdate,'yyyy-mm-dd hh24:mi:ss') from dual;

效果:

02.to_char()对数字的转换

--02.to_char()对数字的转换
select to_char(sal,'L9,999.99')
from emp;

效果:

四.数字函数

01.Round()

--数字函数
--01.Round()四舍五入
select round(12.45,1) from dual;

效果:

02.trunc()截断

 --02.trunc()截断
select trunc(15.19,1) "Truncate" from dual;

效果:

五.通用函数

nvl和nvl2滤空函数

01.nvl滤空函数

select sal*12工资,comm 奖金,sal*12+nvl(comm,0) from emp;

效果:

02.nvl2滤空函数

select sal*12工资,comm 奖金,sal*12+nvl2(comm,comm,0) from emp;

效果:

六.decode函数

--decode函数
select ename,empno,
decode (ename,'SMITH',1,
'ALLEN',2,
'WARD',3,
'JONES',4) "Location"
from emp
where empno<7600
order by empno,"Location"

效果:

Oracle SQL函数的更多相关文章

  1. Oracle SQL函数之数学函数

    Oracle SQL函数之数学函数 ABS(x) [功能]返回x的绝对值 [参数]x,数字型表达式 [返回]数字 SQL> SELECT ABS(),ABS(-) FROM DUAL; ABS( ...

  2. Oracle SQL函数之转换函数To_char汇总

    TO_CHAR(x[[,c2],C3])[功能]将日期或数据转换为char数据类型[参数]x是一个date或number数据类型.c2为格式参数c3为NLS设置参数如果x为日期nlsparm=NLS_ ...

  3. Oracle SQL函数之转换函数

    chartorowid(c1) [功能]转换varchar2类型为rowid值 [参数]c1,字符串,长度为18的字符串,字符串必须符合rowid格式 [返回]返回rowid值 [示例] SQL> ...

  4. Oracle SQL函数之字符串函数

    1.SQL> ) from dual; --ASCLL(x)返回x的ASCLL码,CHR(x)返回ASCLL码为x的字符 ASCII() ---------- ---------- ------ ...

  5. [转]Oracle SQL函数pivot、unpivot转置函数实现行转列、列转行

    原文地址:http://blog.csdn.net/seandba/article/details/72730657 函数PIVOT.UNPIVOT转置函数实现行转列.列转行,效果如下图所示: 1.P ...

  6. Oracle SQL函数-NLSSORT

    Syntax 用途: NLSSORT返回字符值char的排序规则键和显式或隐式指定的排序规则.排序规则键是一个用于根据指定的排序规则对char进行排序的字节字符串.排序规则键的属性是:按二进制比较由给 ...

  7. Oracle SQL函数之聚组函数

    AVG([distinct|all]x) [功能]统计数据表选中行x列的平均值. [参数]all表示对所有的值求平均值,distinct只对不同的值求平均值,默认为all 如果有参数distinct或 ...

  8. Oracle SQL函数之日期函数

    sysdate [功能]:返回当前日期. [参数]:没有参数,没有括号 [返回]:日期 SQL> SELECT SYSDATE FROM DUAL; SYSDATE ----------- // ...

  9. ORACLE SQL 函数 INITCAP()

    INITCAP() 假设c1为一字符串.函数INITCAP()是将每个单词的第一个字母大写,其它字母变为小写返回. 单词由空格,控制字符,标点符号等非字母符号限制. select initcap('h ...

随机推荐

  1. 《Pro ASP.NET MVC 4》异常整理

    最近在和同学一起研究毕业设计,准备模仿<Pro ASP.NET MVC 4>里面的SportsStore设计模式和测试驱动开发. 由于和书中VS版本不同,发现不少问题,在此总结. 用户代码 ...

  2. CentOS 6.4 服务器版安装教程(超级详细图解)

    附:CentOS 6.4下载地址 32位:http://mirror.centos.org/centos/6.4/isos/i386/CentOS-6.4-i386-bin-DVD1to2.torre ...

  3. [连载]《C#通讯(串口和网络)框架的设计与实现》-3.设备驱动的设计

    目       录 第三章           设备驱动的设计... 2 3.1           初始化设备... 4 3.2           运行设备接口设计... 4 3.3        ...

  4. nhibernate 中 lazy="no-proxy" 时的问题

    在 nhibernate,如果将实体的一个关联属性配置为 lazy="no-proxy",那么,从其他属性计算出来的属性不能正确更新.例如,将以下代码中 Foo.Bar 配置为 l ...

  5. Hibernate 小阶段总结

    (一)Hibernate入门 通俗的话来说:Hibernate是用于面向对象操控数据库,对JDBC进行轻量级封装.(在java世界中传统的来说是JDBC访问数据库.) 1)Hibernate定性:对象 ...

  6. 学习Javascript闭包(Closure)

    闭包作用 1.让变量驻留在内存中 2.函数外部可以读取函数内部的私有变量 <!DOCTYPE html> <html lang="en"> <head ...

  7. jQuery Ion.Calendar 日期/日历

    在线实例 实例演示 默认 实例演示 每周第一天 实例演示 输入框插件 实例演示 HTML data 属性 实例演示 回调函数1 实例演示 回调函数2 使用方法 <div id="cal ...

  8. javascript封装与多态的体现

    封装是实现面向对象程序设计的第一步,封装就是将数据与函数等集合在一个个的单元中(我们称之为类).被封装的对象通常被称为抽象数据类型. 在传统的面向对象语言中有访问修饰符,如Private:只有类本身能 ...

  9. AngularJS在IE8的支持

    AngularJS一般不会选择IE8支持, 因为很多特性在IE8下效果很差, 性能也不好, 但是由于项目的需要, 客户的机器有些是XP, 只能够装IE8, 所以为了解决这个, 我查阅了相关的资料,发现 ...

  10. Android Fragment使用(二) 嵌套Fragments (Nested Fragments) 的使用及常见错误

    嵌套Fragment的使用及常见错误 嵌套Fragments (Nested Fragments), 是在Fragment内部又添加Fragment. 使用时, 主要要依靠宿主Fragment的 ge ...