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('20020405','yyyymmdd')) from dual;

效果:

02.两个日期相差的月数

--两个日期相差的月数
select months_between(sysdate,to_date('20111204','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函数

    Oracle将函数大致分为单行函数,聚合函数和分析函数. 单行函数分为字符函数,日期函数,转换函数,数字函数,通用函数,decode函数 一.字符函数 1)大小写控制函数 01.Lower() 全部小 ...

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

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

  4. Oracle SQL函数之转换函数

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

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

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

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

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

  7. Oracle SQL函数-NLSSORT

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

  8. Oracle SQL函数之聚组函数

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

  9. Oracle SQL函数之日期函数

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

  10. ORACLE SQL 函数 INITCAP()

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

随机推荐

  1. go语言 类型:字符串

    示例 package main import ( "fmt" ) func main() { var str1 string // 声明一个字符串变量 str1 = "H ...

  2. 一级缓存、二级缓存、延迟加载、hibernate session 域 pojo三种状态

    1.一级缓存(session缓存 ).二级缓存      意义:提高hibernate查询效率.    缺点:可能会因并发,产生数据不一致.      本质:基于session 的缓存,利用hiber ...

  3. Node.js的基础学习1

    nodejs   windows下的调用方法: C:\Users\owen>node helloworld.jsHello WorldHello: 25 C:\Users\owen>nod ...

  4. CSS3之3D变换实例详解

    CSS3的3D效果很赞,本文实现简单的两种3D翻转效果.首先看效果和源代码,文末是文绉绉的总结部分^_^ 以下CSS代码为了简洁没有添加前缀,请视情况自行添加(自动化时代推荐使用其他的一些方法,如gu ...

  5. 线程安全、数据同步之 synchronized 与 Lock

    本文Demo下载传送门 写在前面 本篇文章讲的东西都是Android开源网络框架NoHttp的核心点,当然线程.多线程.数据安全这是Java中就有的,为了运行快我们用一个Java项目来讲解. 为什么要 ...

  6. Ubuntu 安装WPS

    1.到官网下载deb安装包 http://community.wps.cn/download/ 2.安装 sudo dpkg -i wps-office_10.1.0.5672~a21_amd64.d ...

  7. xxx is not in the sudoers file.This incident will be reported.的解决方法 (一般用户不能执行sudo)

    1.切换到root用户下 2.添加sudo文件的写权限,命令是:chmod u+w /etc/sudoers 3.编辑sudoers文件vi /etc/sudoers找到这行 root ALL=(AL ...

  8. JavaScript(一)——简介(简单介绍)

    1.JavaScript是个什么东西? 它是个脚本语言,需要有宿主文件,它的宿主文件是HTML文件. 2.它与Java什么关系? 没有什么直接的联系,Java是Sun公司(已被Oracle收购了),J ...

  9. 讲讲js中的逻辑与(&&)以及逻辑或(||)

    前几天看到一个函数,百思不得其解,今天早上醒来看了本js的书,正好讲到操作符的用法,给大家分享下js中的&&,||,和我们用的其他的编程语言还是有点区别的. 直接上那个函数的代码: f ...

  10. 数据分页处理系列之二:HBase表数据分页处理

      HBase是Hadoop大数据生态技术圈中的一项关键技术,是一种用于分布式存储大数据的列式数据库,关于HBase更加详细的介绍和技术细节,朋友们可以在网络上进行搜寻,笔者本人在接下来的日子里也会写 ...