当前位置: 首页 > ds >正文

oracle的常用函数

函数

Oracle 提供一系列用于执行特定操作的函数

1.sysdate:当前的日期包含时间

select sysdate from dual;

2.length(str)函数:返回字符串长度,str表示一个字符串

select length('aa') from dual;select ename,length(ename) from emp;

3.concat(str1,str2):str1,str2都是字符串,将字符串str1和str2拼接在一起

select concat('aa','bb') from dual;||:它是字符串连接符select 'aa'||'bb' from dual;select concat(concat('aa','bb'),'cc') from dual;select 'aa'||'bb'||'cc' from dual;select table_name from user_tables;   --查询当前用户下数据库中所有的表名select column_name from user_tab_columns where table_name='EMP';select concat('aa','bb') from dual;||:它是字符串连接符select 'aa'||'bb' from dual;select concat(concat('aa','bb'),'cc') from dual;select 'aa'||'bb'||'cc' from dual;select table_name from user_tables;   --查询当前用户下数据库中所有的表名select column_name from user_tab_columns where table_name='EMP';

4.chr(ASCCII):它将ASCCII码转换成字符

select chr(39) from dual;select chr(65) from dual;select chr(97) from dual;select 'insert into dept values('||deptno||','||chr(39)||dname||chr(39)||','||chr(39)||loc||chr(39)||');' from dept;

5.substr(str,index,len):字符串截取函数,str是一个字符串,index截取的开始位置,len截取的长度(第三个参数可省略)

表示从字符串str的index位置开始截取len个长度的字符select substr('abcdefg',2,2) from dual;select substr('abcdefg',2) from dual;select substr('abcdefg',2,6) from dual;select substr('abcdefg',2,8) from dual;

6.trim([s from ]str):str表示字符串,s表示字符,表示去除字符串两端的空格,如果加s,表示去除字符串两端的字符s

select '   abcd    ' from dual;select trim('   abcd    ') from dual;select trim('$' from '$abcd$$') from dual;ltrim(str[,'s']):去除字符串左边的空格或者字符s
rtrim(str[,'s']):去除字符串右边的空格或者字符sselect ltrim('    abcd    ') from dual;select rtrim('    abcd    ') from dual;select ltrim('$abcd$','$') from dual;select rtrim('$abcd$','$') from dual;

7.replace(str,s,d):替换函数

select replace('abcd1qewr1qerazdf','qe','QE') from dual;

8.lpad/rpad(str,len,[s]):str表示字符串,len表示扩展后的字符串长度,s:表示要扩展的内容,可选参数

select lpad('aa',4) from dual;select lpad('aa',4,'b') from dual; select lpad('abcd',2,'6') from dual;

9.initcap(str):首字母大写

select initcap('hello world') from dual;select initcap('helloworld') from dual;

10.lower/upper(str):将字符串全部转换成大写/小写

select lower(ename) from emp;select upper(ename) from emp;

11.instr(str,s[,n1,n2]):在字符串中找某个字符的位置,str字符串,s:要查询的字符,n1表示从位置开始查询,n2表示这个字符第几次出现

在字符串str中从n1的位置开始查询第n2次出现字符s的位置select instr('asdoqwerjldajsfoqjwelfjaoidsfj','j') from dual; --查字符串首次出现j的位置
select instr('asdoqwerjldajsfoqjwelfjaoidsfj','j',10) from dual;--从字符串的第10个字符开始查找第一次出现j的位置

12.floor(n):取整函数,只取整数部分,不进行四舍五入

select floor(3.41) from dual;
select floor(3.98) from dual;

13.mod(m,n):求m除以n的余数的函数

select mod(3,2) from dual;

14.round(n,s):四舍五入函数,n表示数字,s表示精度,默认是0

select round(3.134) from dual;select round(5.76) from dual;select round(5.68,1) from dual;

15.power(m,n):求m的n次方

select power(2,8) from dual;

16.to_number(str[,format]):将字符串转换成数字,str字符串,format格式字符串

select to_number('78.1234') from dual;

17.to_date(str,format):将字符串转换成固定格式的日期,str是一个日期,format:日期格式

select to_date('1999-09-09 14:24:34','yyyy-MM-dd hh24:mi:ss') from dual;

18.to_char(date,format):将日期转换成字符串,date是一个日期,format:日期格式

select to_char(sysdate,'yyyy') from dual;select to_char(sysdate,'hh24:mi:ss') from dual;select to_char(sysdate,'day') from dual;

19.add_months(date,n):给日期加减n个月

select add_months(sysdate,3) from dual;select add_months(sysdate,-2) from dual;日期直接加上一个整数,相当于加的天数select sysdate-1 from dual;

20.months_between(date1,date2):求两个日期相差多少个月

select months_between(sysdate,to_date('20210120','yyyyMMdd')) from dual;

21.last_day(date):取日期当前月的最后一天

select last_day(sysdate) from dual;select current_date from dual;

22.trunc():截断函数

select trunc(3.13453,3) from dual; --截断数字类型,第二个参数表示精度,不会四舍五入select trunc(3234.1324,-2) from dual;select trunc(sysdate,'yyyy') from dual;  --截取到年(本年的第一天)select trunc(sysdate,'MM') from dual;  --截取到月(本月的第一天)select trunc(sysdate,'month') from dual;  --截取到月(本月的第一天)select trunc(sysdate,'day') from dual;  --截取到周(本周第一天,即上周日)

23.nvl(变量,默认值):如果变量的值是空时,函数返回默认值,如果变量的值不为空返回变量的值


select nvl(comm,200) from emp;

http://www.xdnf.cn/news/11572.html

相关文章:

  • LED灯珠的封装形式
  • XDC约束技巧——时钟篇【XDC其基础语法来源于业界统一的约束规范SDC】
  • Java线程池ThreadPoolExecutor详细介绍与使用
  • 使用html+css+js实现一个静态页面(含源码)
  • Resultset获取数据
  • Linpack的安装
  • LaTex实战笔记 4-字体格式
  • TOPSIS法
  • 黑客常用10大工具,你用过几个?
  • 计算机中的位,字节,字,字长的定义
  • 100部经典漫画,有机会看看。
  • Linux命令su、sudo、sudo su、sudo -i使用和区别_sudu -i
  • ffdshow 源代码分析 6: 对解码器的dll的封装(libavcodec)
  • securecrt破解版64位
  • DeviceIoControl接口
  • MANIFEST.MF文件详解
  • 浏览器下载poi-tl生成的word文件
  • 【Java】纯小白的三种工厂模式基础知识学习笔记
  • 标题:**炫酷桌面美学:xscreensaver-aerial——Linux用户的苹果电视高清屏保**
  • 当python爬虫遇到10060错误
  • CC服务器
  • 【讲解清晰生动,深入浅出,通俗易懂】什么是测地线(geodesic)?
  • Java入门级基础教学(史上最详细的整合)
  • 【linux】ubuntu安装系统软件路径为阿里源(不同版本源)
  • 【接口汇总】常用免费的API
  • Win11系统在administered账户下无法登录微软账户显示:哎呀,出错了。解决方法。
  • Android多线程之HandlerThread详解
  • Unity中Avatar换装实现
  • 【初探Java之路 一 】什么是Java以及安装其环境
  • InstantClient+PLSQL安装配置教程