文档介绍:该【oracle教程 】是由【胜利的果实】上传分享,文档一共【17】页,该文档可以免费在线阅读,需要了解更多关于【oracle教程 】的内容,可以使用淘豆网的站内搜索功能,选择自己适合的文档,以下文字是截取该文章内的部分文字,如需要获得完整电子版,请下载此文档到您的设备,方便您编辑和打印。oracle教程
2025/6/15
oracle教程
2:字符串连接函数ConCAT
CONCAT(char1,char2)函数返回两个字符串连接后的结果,它完全等价于连接运算符’||’.
例如select concat(‘I love’,’sql’) from dual;
Concat和||的区别
Concat函数参数只能是字符类型,而||可以连接多种类型
3:获取字串函数SUBSTR
函数SUBSTR(char,[m[,n]]用于获取字符串的字串,返回从char中m位开始取的n个字符,如果m为正数,则从左往右取起,如果m位为负数,则从右往左取起,如果没有n,或者n的长度超过了char的长度,则取到字符串末尾为止。
例:select substr(‘I love SQL’,3,4)
oracle教程
4、求字符串长度函数LENGTH
LENGTH函数是求字符长度的函数,返回的是数值类型
例:select length(‘I love SQL’) from dual;
5:获取字串在字符串中的位置函数INSTR
INSTR(char1,char2[,n[,m]])函数用于取得字串在源字符串中的位置,也就是在char1 中搜索char2, 从n的位置开始搜索,如果没有指定n,就从第一个字符开始搜索。M用于指定字串的第m次出现次数,如果不指定也取值为1,如果在char中没有找到子串,则返回0.
例:select instr(‘doctor who’, ‘who’) words from dual;
oracle教程
6:补位函数lpad、rpad
LPAD(char1,n,char2)、RPAD(char1,n,char2)分别叫做左补位函数和右补位函数,用于在字符串char1的左端或右端用char2补足到n位,char2可重复多次。
例:select LPAD(‘travels in tardis’,28,’doctor who’) words from dual
例:select RPAD(‘travels in ‘,17,’tardis’) words from dual
7:截去字串函数trim、ltrim、rtrim
TRIM(c2 from c1)、 LTRIM(c1 [, c2])、 RTRIM(c1[, c2)函数的作用都是截去子串,其中c1表示源字符串, c2是被截去的字串,意思即从c1的前后,左边,右边去掉c2,如果没有c2,去掉空格.
Trim函数的一个非常有用的功能是去除一个字符前后的空格,这种用法trim函数只有一个参数。
例:select trim(‘ 中秋八月中 ‘) from dual;
oracle教程
8:替换函数REPLACE
REPLACE(char,search_string [,replace_string]函数用来替换字符串中的子串。意思是把char中把search_string替换为replace_string,如果没有replace_string,默认用空格替换.
例:select replace(‘doctor travles with rose’,’rose’,’martha’) words from dual;
9:ASCII码和字符的对应函数ascii、chr
ASCII(char)、CHR(n)这两个函数互为逆函数,根据字符和ascii码值的对应关系,ASCII(char)返回char的ascii码值,CHR(n)返回n对应的字符.
例:select CHR(65) CHR_65,ascii(‘A’) from dual;
oracle教程
二:常用数学函数
1、ROUND、TRUNC
ROUND(n[,m])函数用于四舍五入,参数中的n可以是任何数字,指要被处理的数字,m必须是整数,m如果取正数则四舍五入到小数点后第m位,如果m取0则四舍五入到整数位,如果m取负数,则四舍五入到小数点前m位,如果m缺省,默认值为0。
例:select round(,2) from dual;
select round(,0) from dual;
Select round(,-1) from dual;
Trunc(n[,m])用于截取,其中n和m的定义和round(n[m])相同。
oracle教程
2、cell、floor
Cell(n)、floor(n)
CELL(n):天花板数,就是取大于或等于n的最小整数值。
Floor(n):地板数,就是取小于或等于n的最大整数值.
例:select cell() from dual;
select floor() from dual;
3、ABS、MOD 、SIGN 、POWER 、 SQRT
ABS(n) :返回n的绝对值
MOD(m,n):返回m除以n后的余数,如果n为0则直接返回m;
SIGN(n):用于检测数字的正负,如果n是正数返回1,负数返回-1,如果n等于0则会返回0.
Power(m,n)返回参数M的n次幂,SQRT(n)返回n的平方根.
oracle教程
三:日期函数
日期函数操作date类型数据,得到新的日期值或数字。
1、sysdate:该函数没有参数,返回当前的系统时间,显示格式默认为DD-M月—yy,也可以使用函数to_char显示为指定的格式。
例:select sysdate from dual;
2、MONTHs_BETWEEN
MONTHs_BETWEEN(date1,date2)计算date1和date2两个日期值之间间隔了多少个月,注意是date1-date2,如果date2时间比date1晚,会得到负值。
如果要获得两个日期间隔多少天,可以直接用两个日期值相减。
3、ADD_months函数
ADD_month(date,n)函数主要是在指定日期基础上加上相应的月份,返回值是日期类型
例:select add_month(sysdatem6) six_month_later from dual;如果要在一个日期值上加上I天,可以直接在日期上加上整数i。
oracle教程
4、NEXT_DAY
NEXT_DAY(date,char)返回date日期数据的下一个周几,周几是由参数char来决定的,在中文环境下,直接使用”星期三”这种形式,英文环境下,需要使用“Wednesday”
例:select next_day(sysdate,’星期三’) next_wedn from dual;查找下个星期三的日期
5、LAST_DAY
LAST_DAY(date)返回日期date所在月的最后一天。
例:select last_day(sysdate) from dual;
6:EXTRACT
EXTRACT (date from datetime)从参数datetime中提取参数date指定的数据,比如提取年、月、日,显示当前月份和年等。
例:select extract(year from sysdate) from dual;
oracle教程
7:TRUNC函数
TRUNC(date[,’fmt’])对日期进行指定格式的截断操作
按月截断时,返回当前月份的第一天
按年截断时,会返回当年的第一天
例:select trunc(sysdate,’MONTH’) from dual;
select trunc(sysdate,’year’) from dual;
oracle教程