0

0

什么是oracle函数

DDD

DDD

发布时间:2023-06-06 10:15:02

|

1530人浏览过

|

来源于php中文网

原创

oracle函数是PL/SQL子程序,作为数据库对象存储在oracle数据库中,会对传递进来的参数进行处理,并返回一个处理结果,也就是返回一个值,通常用于返回特定的数据,oracle函数可分为系统函数和用户自定义函数两类。

什么是oracle函数

本教程操作环境:Windows10系统、Oracle 19c版本、Dell G3电脑。

Oracle函数的定义

函数是作为数据库对象存储在oracle数据库中,函数又被称为PL/SQL子程序。

函数会对传递进来的参数进行处理,并返回一个处理结果,也就是返回一个值。通常用于返回特定的数据。

oracle函数可分为两类:系统函数和用户自定义函数。

ORACLE函数之单行函数

  • 不改变真实数据,只对数据做进一步修饰或处理显示
  • 可和字段混合使用

    伪表:真实存在的表,方便进行数据验证而临时存在;表名:dual

1.字符函数

函数名 作用 示例 结果
initcap(char) 首字母大写 initcap('nice') Nice
lower(char) 转为小写 lower('NICE') nice
upper(char) 转为大写 upper('nice') NICE
ltrim(char,set) 左剪 ltrim('nice','ni') ce
rtrim(char,set) 右剪 rtrim('nice','e') nic
concat(char1,char2) 字符串连接 concat('ni','ce') nice
substr(char,pos,len) 取子串 substr('nice',2,2) ic
instr(char,substr) 查子串位置 instr('nice','c') 3
translate(char,key,value) 按字符映射翻译 translate('nice','ne','01') 0ic1
replace(char,old,new) 字符串替换 replace('nice','c','cc') nicce

2.数值函数

函数名 作用 示例 结果
abs(n) 取绝对值 abs(-3) 3
mod(m,n) 取余 mod(3,2) 1
sign(n) 取符号 sign(-3) -1
ceil(n) 向上取整 ceil(3.2) 4
floor(n) 向下取整 floor(3.2) 3
round(m,n) 四舍五入为指定小数位数 round(3.236,2) 3.24
power(m,n) m的n次幂 power(3,2) 9
sqrt(n) 平方根 sqrt(4) 2
trunc(m,n) 截断 trunc(3.233,2) 3.23
sin(n) 正弦 sin(0) 0
cos(n) 余弦 cos(0) 1

3.日期函数

函数名 作用 示例 结果
months_between(date1,date2) 返回两日期间的月份(若date1在日历中比date2早,则返回一个负数,反之则返回一个正数) months_between('01-8月-2020',‘01-8月-2020’) 0
add_months(date,m) 返回把月份数加到日期上的新日期 add_months('25-8月-2020',-1) 25-7月-2020
next_day(date,week) 返回指定新日期后的星期对应的新日期 next_day('23-8月-2020',‘星期一') 24-8月-2020
last_day(date) 返回指定日期所在月的最后一天 last_day('25-8月-2020') 31-8月-2020
round(date,p) 按指定格式对日期进行四舍五入 round(to_date('25-8月-2020'),’YEAR‘) 1-1月-2021
trunc(date,p) 对日期按指定方式截断 trunc(to_date('25-8  月-2020'),'YEAR') 01-1月-2020

注:

  • p为YEAR,round按1-6月和7-12月,四舍五入到最近的yyyy年1月;trunc截取到本年第一天。
  • p为MONTH,round按1-15日和16-30日,四舍五入到最近mm月的1日;trunc截取到本月第一天。
  • p为DAY,round按周一至周三和周四至周日,四舍五入到最近的周日。trunc截取到本周第一天。

oracle函数之多行函数

  • 对查询数据进行统计
  • 不能和普通字段及单行函数混合使用,除非分组

    函数名 作用
    max(字段名) 返回该字段最大值
    min(字段名) 返回该字段最小值
    sum(字段名) 返回该字段的和
    avg(字段名) 返回该字段平均值
    count(*) 返回表记录数
    count(字段名) 返回非空值数量
    count(distinct 字段名) 返回去重后字段值数量

oracle函数之转换函数

  • to_number(数值类型的字符):将字符转换为数值

  • to_char(数值或日期):将数值或日期转换为字符

    阿里云-虚拟数字人
    阿里云-虚拟数字人

    阿里云-虚拟数字人是什么? ...

    下载

    指定显示格式:

    9表示占位,例:999,999,999会将数字按三个一组逗号隔开。

    0表示占位,若实际数据位数不足,则用0补位。

    L表示人民币符号,$表示美元符号。

    注:数值和字符之间可隐式转换。

  • to_date(日期格式的字符):将字符转换为日期(一般新增使用,查询用to_char)

    常用日期格式:yyyy-mm-dd

    yyyy/mm/dd

    'yyyy"年"mm"月"dd"日"'

    注:字符必须符合日期格式;oracle默认转换格式为日月年,例'25-8月-2020'。

oracle函数之其他函数

  • nvl(字段名,新的值):若字段值不为null,则返回该字段值;若为null,则返回新的值。

  • nvl2(字段名,处理1,处理2):若字段值不为null,则执行处理1;若为null,则执行处理2。

  • decode(字段名,值1,处理1,值2,处理2,值3,处理3,...,公共处理):若字段值和decode中条件值相同,则执行对应的处理。若都没有,则执行公共处理。

相关专题

更多
菜鸟裹裹入口以及教程汇总
菜鸟裹裹入口以及教程汇总

本专题整合了菜鸟裹裹入口地址及教程分享,阅读专题下面的文章了解更多详细内容。

0

2026.01.22

Golang 性能分析与pprof调优实战
Golang 性能分析与pprof调优实战

本专题系统讲解 Golang 应用的性能分析与调优方法,重点覆盖 pprof 的使用方式,包括 CPU、内存、阻塞与 goroutine 分析,火焰图解读,常见性能瓶颈定位思路,以及在真实项目中进行针对性优化的实践技巧。通过案例讲解,帮助开发者掌握 用数据驱动的方式持续提升 Go 程序性能与稳定性。

9

2026.01.22

html编辑相关教程合集
html编辑相关教程合集

本专题整合了html编辑相关教程合集,阅读专题下面的文章了解更多详细内容。

56

2026.01.21

三角洲入口地址合集
三角洲入口地址合集

本专题整合了三角洲入口地址合集,阅读专题下面的文章了解更多详细内容。

51

2026.01.21

AO3中文版入口地址大全
AO3中文版入口地址大全

本专题整合了AO3中文版入口地址大全,阅读专题下面的的文章了解更多详细内容。

397

2026.01.21

妖精漫画入口地址合集
妖精漫画入口地址合集

本专题整合了妖精漫画入口地址合集,阅读专题下面的文章了解更多详细内容。

118

2026.01.21

java版本选择建议
java版本选择建议

本专题整合了java版本相关合集,阅读专题下面的文章了解更多详细内容。

3

2026.01.21

Java编译相关教程合集
Java编译相关教程合集

本专题整合了Java编译相关教程,阅读专题下面的文章了解更多详细内容。

16

2026.01.21

C++多线程相关合集
C++多线程相关合集

本专题整合了C++多线程相关教程,阅读专题下面的的文章了解更多详细内容。

11

2026.01.21

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
SQL 教程
SQL 教程

共61课时 | 3.5万人学习

Java 教程
Java 教程

共578课时 | 49.5万人学习

oracle知识库
oracle知识库

共0课时 | 0人学习

关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号