文档章节

Oracle数据库常用函数 转换函数 日期函数 字符型函数 数值函数

S
 Sakura20
发布于 01/23 11:52
字数 890
阅读 13
收藏 0

在讲解函数的功能和用法之前,先了解一下dual这个表。

dual这个表是一张只有一个字段,一行记录的表。它是一个虚拟表,用来构成select的语法规则。所以我们接下来会用到这个表来讲解常用函数。

 

一.数值函数:

                1.  取整函数 ceil(n)向上取整floor(n)向下取整

                   例:select ceil(21.1),floor(21.1),ceil(23.5),floor(23.5) from dual;

                2.截取函数 trunc(n,m)n为你要截取的数值,m为截取长度当没有m是默认为0,截取整数部分。

                    例:select trunc(21.12),trunc(21.12,1),trunc(21.12,2),trunc(21.12,-1),trunc(21.12,-2) from dual;


                3.四舍五入函数round(n,m)n为你的数值,m为长度当没有m是默认为0。

                    例:select round(21.1),round(21.1,1),round(21.1,-1),round(29.1,-1) from dual;

 

                4.绝对值函数abs(n)

                    例:select abs(21.1),abs(-21.1) from dual;

 

                5.取余函数mod(n,m) n为你取余的数值,m为你要和谁取余

                    例:select  mod(9,2),mod(97,13) from dual;

 

                6.幂函数power(n,m)n为你的子数m为你的幂

                    例:select power(2,3),power(3,2) from dual;

 

                7.三角函数sin(n),cos(n),asin(n),acos(n)

                    例:select sin(3.14),cos(3.14),asin(0.123),acos(-0.99999873172754) from dual;

 

                8.平方根函数sqrt(n)

                    例:select sqrt(9),sqrt(12) from dual;

                9.返回值符号sign(n)

                    例:select sign(136),sign(-136) from dual;

二.字符型函数

                1.截取函数substr(char1,m)  如果m为正数取掉前面m-1位数,如果为负数保留最后m位数。

                    例:select substr('diufhska',3),substr('diufhska',-3) from dual;

 

                2.替换函数replace(char1,char2,char3)  char1为你的原始数据,char2为要替换的数据,char3为替换成什么数据,如果char3为空则为删除char2这个数据。

                    例:select replace('asdkjfdh djskf edse','dkj','-'),replace('asdkjfdh djskf edse','dkj','') from dual;

 

                3.instr函数 instr(char1,char2)注意这个函数注重大小写

                    例:select instr('ABCpDGFDHDffffd','d'),instr('ABCpDGFDHDffffd','D'),instr('ABCpDGFDHDffffd','c') from dual;

 

                4.连接函数||或concate

                    例:select concat('asdfg','hjkl'),'asdfg'||'hjkl' from dual;

 

                5.去除函  TRIM([{{ LEADING | TRAILING | BOTH }[ trim_character ]} FROM ]trim_source)    其中leading去头 trailing 去尾,不写和both相同

                  例:select trim('a' from 'asfadga'),trim(leading 'a' from 'asdfaga'),trim(trailing 'a' from 'asfadga'),trim(both 'a' from 'asdfaga')from dual;

 

                5.截取函数ltrim(char1,char2)

                    例:select ltrim('asdfghjkl',''),ltrim('asdfghjkl','asdfghj') from dual;

 

                6.按长度截取lapd(char1,n)(截取函数怎么这么多???)

                    例:select lpad('asdfghjkl',5),lpad('asdfghjkl','9'),lpad('asdfghjkl',20),lpad('asdfghjkl',-1) from dual;

三.日期函数:

                1.增加月份add_months(date,n)

                    例:select add_months(sysdate,3),add_months(sysdate,-3) from dual;

 

                2.计算日期的最后一天last_day(date)

                    例:select last_day(to_date('2015-2-1','yyyy-mm-dd')),last_day(to_date('2015-1-1','yyyy-mm-dd')) from dual;

 

                3.计算相差几个月months_between(date1,date2)

                    例:select months_between(to_date('2015-5-15','yyyy-mm-dd'),to_date('2015-1-15','yyyy-mm-dd')) from dual;

 

                4.获取想要的日期

                    例:select extract(year from sysdate),extract(month from sysdate) ,extract(day from sysdate),extract(hour from timestamp '2015-10-1 19:11:25') from dual;

 

四.转换函数

                1.to_number()转换为数字类型

                    例:select to_number(to_char(sysdate,'yyyy'))  from dual;

 

                 2.to_char()转换为字符型

                 例:select to_char(sysdate,'yyyy')  from dual;

 

                3.to_date()转换为日期

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

 

以上的函数名称是我瞎编的,请注意引用。

 

 

 

                

                

 

 

 

 

 

 

 

 

© 著作权归作者所有

共有 人打赏支持
S
粉丝 7
博文 37
码字总数 22403
作品 0
嘉定
私信 提问
Oracle基本使用——第五章 Oracle函数

Oracle基本使用——第五章 Oracle函数 第五章 Oracle函数 5.1 数学函数 --数值数据(绝对值,三角函数,对数函数,随机函数) 绝对值函数 ABS(x) 平方根函数 SQRT(x) 求余函数 MOD(x,y) 获取整...

代金券优惠
2018/04/27
0
0
PLSQL常用函数(ORACLE)(3)

1.NVL函数 NVL函数的格式如下:NVL(expr1,expr2) 含义是:如果oracle第一个参数为空那么显示第二个参数的值,如果第一个参数的值不为空,则显示第一个参数本来的值。 例如: SQL> select en...

_Tomorrow
2016/04/25
45
0
Oracle pl/sql总结

(1)SEQNAME.NEXTVAL里面的值如何读出来?可以直接在insert into test values(SEQNAME.NEXTVAL) 是可以用 这样: SELECT tmp#_seq.NEXTVAL INTO id_temp FROM DUAL; 然后可以用id_temp (2)PL......

chapin
2013/03/25
0
0
sqlserver常用函数大全

一、字符串函数 datalength(Char_expr) 返回字符串包含字符数,但不包含后面的空格 substring(expression,start,length) 不多说了,取子串 right(charexpr,intexpr) 返回字符串右边int_expr个字...

科技小能手
2017/11/12
0
0
PLSQL常用函数(ORACLE)(1)

1)处理字符的函数   || 或 CONCAT---并置运算符。   格式∶CONCAT(STRING1, STRING2)   例:’ABC’|| ’DE’=’ABCDE’   CONCAT(‘ABC’,’DE’) =’ABCDE’      ASCII---返回...

_Tomorrow
2016/04/25
24
0

没有更多内容

加载失败,请刷新页面

加载更多

matlab-线性代数 将矩阵变成列、行向量

  matlab : R2018a 64bit     OS : Windows 10 x64 typesetting : Markdown    blog : my.oschina.net/zhichengjiu    gitee : gitee.com/zhichengjiu   将矩阵变成列、行向量(按照......

志成就
21分钟前
2
0
开始使用Filebeat

认识Beats Beats是用于单用途数据托运人的平台。它们以轻量级代理的形式安装,并将来自成百上千台机器的数据发送到Logstash或Elasticsearch。 (画外音:通俗地理解,就是采集数据,并上报到...

北极南哥
24分钟前
2
0
shell getopts template

!/bin/bash# ------------------------------------------------------------------# [Author] Title# Description# ---------------------------------------------------......

易野
39分钟前
2
0
DHCP服务原理与搭建(Linux系统+路由器,二选一方案)

大家都知道上网的最基本前提是要在终端上设置IP、子网掩码、网关、DNS等地址信息,在家里或者在办公室很多时候打开电脑后发现就可以上网,并没有手动设置IP、掩码、DNS地址也能上网,这是什么...

老率的IT私房菜
48分钟前
6
0
GitLab的安装及使用教程

首页 新随笔 管理 随笔 - 575 文章 - 0 评论 - 27 GitLab的安装及使用教程 1、配置yum源 vim /etc/yum.repos.d/gitlab-ce.repo 复制以下内容: [gitlab-ce] name=Gitlab CE Repository base...

rootliu
56分钟前
3
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部