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. 好股Android客户端开发

    按比例排列      TextView 文字对齐 webview和js之间的交互      在WebView中如何让JS与Java安全地相互调用 Android Http请求方法汇总          ...

  2. php strtotime 在32位操作系统下的限制

    php strtotime 在32位操作系统下的限制 <?php class DateHelper{ /** * 在32位操作系统下,超过 2038-01-19 03:14:07 ,会溢出 * ...

  3. 【linux草鞋应用编程系列】_5_ Linux网络编程

    一.网络通信简介   第一部分内容,暂时没法描述,内容实在太多,待后续专门的系列文章.   二.linux网络通信     在linux中继承了Unix下“一切皆文件”的思想, 在linux中要实现网 ...

  4. sql where传入类型不同,造成查询结果差异问题

    话说故事是这样的.请听小生慢慢道来: 原有数据样式如下: 正常结果: 问题展现: 此问题主要原因如下: 以下皆可在官网中找到: 为数据类型从高到低依次:(ps:小生用翻译工具翻译,就不在此献丑了) 根 ...

  5. 【转】mysql_fetch_row , mysql_fetch_array , mysql_fetch_assoc 的区别

    <?php $link = mysql_connect('localhost', 'root', ”); mysql_select_db('abc', $link); $sql = “selec ...

  6. 【shell 大系】Linux Shell常用技巧

    在最近的日常工作中由于经常会和Linux服务器打交道,如Oracle性能优化.我们数据采集服务器的资源利用率监控,以及Debug服务器代码并解决其效率和稳定性等问题.因此这段时间总结的有关Linux ...

  7. IT基础架构规划方案三(IT基础软件和系统规划)

    IT基础软件和系统规划 操作系统选型规划方案 根据对某集团的实际调研,获取了企业业务应用系统的建设情况,随着企业信息化建设的推进,需要对各种信息化管理系统和应用系统的服务器选型进行选型规划,根据不同的 ...

  8. js 自动插入分号

    先来看一个例子: function get(){ return { a:1 } } var r=get(); console.log(r); 似乎r的值应该是{a:1},然而运行结果却是undefin ...

  9. 从 HTTP 到 HTTPS - IIS 部署免费 HTTPS

    这篇文章首发于我的个人网站:听说 - https://tasaid.com/,建议在我的个人网站阅读,拥有更好的阅读体验. 这篇文章与 博客园 和 Segmentfault 共享. 前端开发QQ群:3 ...

  10. IOS开发基础知识--碎片37

    1:iOS 使用NJKWebViewProgress做webview进度条 引入头文件: #import "NJKWebViewProgressView.h" #import &q ...