oracle:sql函数
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函数
![](https://common.cnblogs.com/images/copycode.gif)
--decode函数
select ename,empno,
decode (ename,'SMITH',1,
'ALLEN',2,
'WARD',3,
'JONES',4) "Location"
from emp
where empno<7600
order by empno,"Location"
![](https://common.cnblogs.com/images/copycode.gif)
效果:
oracle:sql函数的更多相关文章
- Oracle SQL函数之数学函数
Oracle SQL函数之数学函数 ABS(x) [功能]返回x的绝对值 [参数]x,数字型表达式 [返回]数字 SQL> SELECT ABS(),ABS(-) FROM DUAL; ABS( ...
- Oracle SQL函数
Oracle将函数大致分为单行函数,聚合函数和分析函数. 单行函数分为字符函数,日期函数,转换函数,数字函数,通用函数,decode函数 一.字符函数 1)大小写控制函数 01.Lower() 全部小 ...
- Oracle SQL函数之转换函数To_char汇总
TO_CHAR(x[[,c2],C3])[功能]将日期或数据转换为char数据类型[参数]x是一个date或number数据类型.c2为格式参数c3为NLS设置参数如果x为日期nlsparm=NLS_ ...
- Oracle SQL函数之转换函数
chartorowid(c1) [功能]转换varchar2类型为rowid值 [参数]c1,字符串,长度为18的字符串,字符串必须符合rowid格式 [返回]返回rowid值 [示例] SQL> ...
- Oracle SQL函数之字符串函数
1.SQL> ) from dual; --ASCLL(x)返回x的ASCLL码,CHR(x)返回ASCLL码为x的字符 ASCII() ---------- ---------- ------ ...
- [转]Oracle SQL函数pivot、unpivot转置函数实现行转列、列转行
原文地址:http://blog.csdn.net/seandba/article/details/72730657 函数PIVOT.UNPIVOT转置函数实现行转列.列转行,效果如下图所示: 1.P ...
- Oracle SQL函数-NLSSORT
Syntax 用途: NLSSORT返回字符值char的排序规则键和显式或隐式指定的排序规则.排序规则键是一个用于根据指定的排序规则对char进行排序的字节字符串.排序规则键的属性是:按二进制比较由给 ...
- Oracle SQL函数之聚组函数
AVG([distinct|all]x) [功能]统计数据表选中行x列的平均值. [参数]all表示对所有的值求平均值,distinct只对不同的值求平均值,默认为all 如果有参数distinct或 ...
- Oracle SQL函数之日期函数
sysdate [功能]:返回当前日期. [参数]:没有参数,没有括号 [返回]:日期 SQL> SELECT SYSDATE FROM DUAL; SYSDATE ----------- // ...
- ORACLE SQL 函数 INITCAP()
INITCAP() 假设c1为一字符串.函数INITCAP()是将每个单词的第一个字母大写,其它字母变为小写返回. 单词由空格,控制字符,标点符号等非字母符号限制. select initcap('h ...
随机推荐
- SharePoint 2013 JavaScript API 记录
1.获取创建者字段(Author),oListItem为SPListItem对象 oListItem.get_item('Author')只能获取到对象,获取用户名要用oListItem.get_it ...
- javascript的浅拷贝和深拷贝
1.浅拷贝:复制一份引用,所有引用对象都指向一份数据,并且都可以修改这份数据. 2.深拷贝(复杂):复制变量值,对于非基本类型的变量,则递归至基本类型变量后,再复制. 这里画一个简单的图来加深理解: ...
- Atitit.iso格式蓝光 BDMV 结构说明
Atitit.iso格式蓝光 BDMV 结构说明 1. Iso是个复合文件1 2. Iso内部格式如下1 2.1. Bdmv文件夹格式 BDMV(Blu-ray Disk Movie.BD-MV),为 ...
- 线程安全、数据同步之 synchronized 与 Lock
本文Demo下载传送门 写在前面 本篇文章讲的东西都是Android开源网络框架NoHttp的核心点,当然线程.多线程.数据安全这是Java中就有的,为了运行快我们用一个Java项目来讲解. 为什么要 ...
- spring.net (1) 概念-控制反转(又名依赖注入)
Spring.net 作为一个应用程序框架,在构建企业级.net应用程序提供了很多灵活而又丰富的功能(如:依赖注入,aop,数据访问抽象,asp.net 扩展). 控制反转: Inversion of ...
- android Gui系统之SurfaceFlinger(4)---Vsync(1)
8.Vsync 8.1概论 VSYNC(Vertical Synchronization)是一个相当古老的概念,对于游戏玩家,它有一个更加大名鼎鼎的中文名字—-垂直同步. “垂直同步(vsync)”指 ...
- js自执行函数的几种不同写法的比较
经常需要一个函数自执行,可惜这一种写法是错的: function(){alert(1);}(); 原因是前半段“function(){alert(1);}”被当成了函数声明,而不是一个函数表达式,从 ...
- ror 在windows下开发的坑
虽然知道ror在windows下的坑很多很多,但是目前没有先将就入门学习,也不折腾了.后面等待新机器来了,用linux来搭平台,先记录一下遇到的坑. 1.views/layouts/applicati ...
- (视频) 《快速创建网站》 3.2 WordPress多站点及Azure在线代码编辑器 - 扔掉你的ftp工具吧,修改代码全部云端搞定
本文是<快速创建网站>系列的第6篇,如果你还没有看过之前的内容,建议你点击以下目录中的章节先阅读其他内容再回到本文. 访问本系列目录,请点击:http://devopshub.cn/tag ...
- yii2搭建完美后台并实现rbac权限控制案例教程
作者:白狼 出处:www.manks.top/article/yii2_frame_rbac_template 本文版权归作者,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连 ...