oracle与很多内置函数,主要分为单行函数与集合函数。

首先要提一下dual表,它oracle的一个表,没有什么实质的东西,不能删除它,否则会造成Oracle无法启动等问题,他有很大用处,可以利用它查询很多它没有的字段

举个栗子:

select 30* 20 from dual;

单行函数:

数值型函数:

绝对值函数:abs()

select abs(-300) from dual;

取余函数;mod(n1,n2)返回n1除以n2的余数

select mod(2,3) from dual;

四舍五入截取函数: round(n,integer)如果integer不是整数,自动截取整数部分,如果是正整数,就截取n的四舍五入integer位小数,如果integer未负整数,n被四舍五入小数点向左integer位

select round(23456.4322,3) from dual;

select round(23456.4322,3.43) from dual;

结果同上

select round(23456.4322,3.53) from dual;

结果同上

select round(23456.4322,-4) from dual;

select round(23456.4322,-4.3) from dual;

结果同上

trunc(n,integer)也是截取函数

select trunc(23456.4322,-4) from dual;

字符型函数:

获取字符串长度:length()

select length('asdsdasdsdas') from dual;

字符串截取函数:substr(待截取字符串,从哪个位置开始截取,截取多少个字符) 注意下标从1开始,截取多少个字符如果没有说,就默认截取到最后一个字符

select substr('asdsdasdsdas',4,5) from dual;

select substr('asdsdasdsdas',4) from dual;

 字母大小写转换函数:

upper()转换成大写字母      lower()转换成小写字母

select upper('wewe') from dual;

select lower('DFS') from dual;

替换字符串函数:

replace(待替换的字符串,要替换的字符串,替换成什么字符串)

select replace('明天是什么天气','什么天气','晴天') from dual;

删除字符串首位指定字符的函数:trim()默认删除空格

both是删除前后两边的的指定字符,leading是删除前边制定字符(左),trailing删除后边指定字符

select trim(leading '2' from '234334232'),trim('    test    ') from dual;

select trim(trailing '2' from '234334232'),trim('    test    ') from dual;

select trim(both '2' from '234334232'),trim('    test    ') from dual;

ltrim()去除指定字符的左边所有字符,如果没有指定默认去除空格

select ltrim('  fsdsddcsd', 'sds') ,ltrim('  fsdsddcsd') from dual;

rtrim()与ltrim()相似

日期型函数:

sysdate系统日期

select sysdate from dual;

为日期加上指定月份函数:add_moths()

select add_months(sysdate,3) from dual;

返回指定月份最后一天函数:last_day()

select last_day(sysdate) from dual;

返回指定日期后一周的函数:next_day()

select next_day(sysdate,'星期二') from dual;

提取指定日期特定部分的函数:extract()

select extract(year from sysdate) from dual;

select extract(month from sysdate) from dual;

select extract(day from sysdate) from dual;

 得到i两个日期之间的月份数:months_between()

select months_between(sysdate,to_date('1989-01-2','yyyy/mm/dd')) from dual;

数值转换成字符型函数:to_char()也可以将日期转换成字符型

select to_char(23.55,'99.9') from dual;

select to_char(sysdate,'yyyy-mm-dd') from dual;

字符转日期型函数:to_date()

select to_date('2018-11-09','yyyy-mm-dd') from dual;

字符串转数字函数:to_number()

select to_number('23121.32') from dual;

替换NULL值函数:nvl(n1,n2)如果n1为空,返回n2的值,否则返回n1的值,要求两个参数的类型一致,至少能进行隐式转换

select nvl(comm,0) from emp;

nvl2(n1,n2,n3) n1为空返回n3,不为空,返回n2

select nvl2(comm,100000,0) from emp;

集合函数:

avg()求平均值函数,返回数值类型

select avg(sal) from emp;

count()求记录数量的函数

select count(*) from emp;

select count(sal) from emp group by deptno;

返回最大最小值函数:max()   min()

select max(sal) from emp;

select min(sal) from emp;

求和函数:sum()

select sum(sal) from emp;

其他函数:

表达式匹配函数:decode()

select decode(grade,1,'E',2,'D',3,'C',4,'B',5,'A') from salgrade;

最新文章

  1. maven-replacer-plugin
  2. 初学者-ASCII码 数字转字母
  3. 【转】【WPF】 WPF 调用API修改窗体风格实现真正的无边框窗体
  4. Java Socket常见异常处理 和 网络编程需要注意的问题
  5. The C++ Standard Library --- A Tutorial Reference 读书笔记
  6. iOS 开发 上传代码至github(转)
  7. centos 下搭建 php环境(2) mysql 安装
  8. humble number(hd1058)
  9. mysql高级查询
  10. jQuery中的方法
  11. PHP数据访问易错点(20161030)
  12. 关于JS中数组的分析操作
  13. mycat入门--数据库分片
  14. ubantu安全卸载火狐浏览器
  15. ExcelUploadUtil
  16. change safari user agent
  17. 5分钟搞定Nginx安装
  18. CLE的使用笔记
  19. Into outfile禁用情况下另类方法拿webshell
  20. EF Code First更新数据库时报错:provider: SQL Network Interfaces, error: 26

热门文章

  1. learning rewind func
  2. boost 函数与回调
  3. 北京清北 综合强化班 Day4
  4. javascript原型继承
  5. linux系统nginx下反向代理解析二级目录泛目录教程
  6. Linux设备驱动程序 之 度量时间差
  7. SpringBoot整合guava缓存
  8. FreeMarker学习(常用表达式)
  9. 基于角色的权限控制系统(role-based access control)
  10. 影响mysql性能的因素