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

Oracle——常用的几种函数(含案例)

文章目录

  • 前言
  • 数值型函数
  • 字符串函数
  • 日期函数

前言

对Oracle函数类使用不够熟练,特做总结归纳。

数值型函数

函数含义示例结果
ceil(n)大于或等于数值n的最小整数(向上取整)select ceil(10) from dual;
select ceil(10.1) from dual;
10
11
floor(n)小于等于数值n的最大整数(向下取整)select floor(10) from dual;
select floor(10.1) from dual;
10
10
mod(m,n)m除以n的余数,若n=0,则返回mselect mod(10,3) from dual;
select mod(10,2) from dual;
select mod(10,0) from dual;
1
0
10
power(m,n)m的n次方select power(2,2) from dual;
select power(2,3) from dual;
select power(2,0) from dual;
4
8
1
round(n,m)将n四舍五入,保留小数点后m位select round(13.55555,3) from dual;13.556
sign(n)n>0,则返回1,
n=0,则返回0,
n<0,则返回-1
select sign(2) from dual;
select sign(0) from dual;
select sign(-2) from dual;
1
0
-1
sqrt(n)n的平方根select sqrt(25) from dual;
select sqrt(3) from dual;
5
1.73205080756888

字符串函数

函数含义示例结果
trunc(m,n)数据截取
n如果是日期标识,则截取日期
n如果是数字,则截取长度。
select trunc(to_date(‘2022-08-31’,‘YYYY-MM-DD’),‘YYYY’) from dual;
select trunc(to_date(‘2022-08-31’,‘YYYY-MM-DD’),‘MM’) from dual;
select trunc(to_date(‘2022-08-31’,‘YYYY-MM-DD’),‘DD’) from dual;
select trunc(13.555555,3) from dual;
2022/1/1
2022/8/1
2022/8/31
13.555
substr(char,m,n)字符串截取
m表示起始下标
n表示长度
select substr(‘xiangjiao’,0,5) from dual;xiang
CONCAT (char1, char2)两个字符的拼接select CONCAT ('xiangjiao ', ‘bunana’) from dual;xiangjiao bunana
initcap(char)字符串首字母大写select initcap(‘xiangjiao’) from dual;Xiangjiao
lower(char)所有字符串字符小写转换select lower(‘XIANGJIAO’) from dual;xiangjiao
UPPER(string)所有字符大写select upper(‘xiangjiao’) from dual;XIANGJIAO
replace(char,str1,str2)char中的str1字符替换成str2select replace(‘xiangjiao is bunana’,‘bunana’,‘banana’) from dual;xiangjiao is banana
length(char)计算字符串长度select length(‘xiangjiao’) from dual;9
nvl(d,m)空值替换select nvl(null,0) from dual;
select nvl(2,0) from dual;
0
2
decode(d,a,b,c)值对比替换
如果d == a,则输出b,否则输出c
select decode(‘400030’,‘400030’,‘66666’,‘9999999’) from dual;
select decode(‘111111’,‘400030’,‘66666’,‘9999999’) from dual;
66666
9999999
双竖线并置运算符(字符拼接)

在这里插入图片描述

markdowm语法干扰,最后一个案例以截图展示。

日期函数

函数含义示例结果
sysdate获取系统时间select sysdate from dual;2022/8/31 18:39:40
last_day月份的最后一天select last_day(sysdate) from dual;
select last_day(date’2022-07-15’) from dual;
2022/8/31 18:42:08
2022/7/31
add_months(d,n)月份增加n后的日期
n为正数,表示向后推
n为负数,表示前推
select add_months(date’2022-07-15’,5) from dual;
select add_months(date’2022-07-15’,0) from dual;
select add_months(date’2022-07-15’,-6) from dual;
2022/12/15
2022/7/15
2022/1/15
months_between(d,n)两个日期间隔月数(注意d和n的顺序)select months_between(date’2022-04-15’,date’2022-07-1’) from dual;
select months_between(date’2022-07-1’,date’2022-04-15’) from dual;
-2.54838709677419
2.54838709677419

相关文章:

  • 【Linux】多线程 —— 线程概念 | 线程控制
  • windows10创建ssh git gitee使用公钥私钥【自留收藏】
  • 微信搜题接口API功能
  • YBTOJ 树状数组 二进制
  • 无胁科技-TVD每日漏洞情报-2022-8-30
  • Java8 特性(一):函数、Lambok、Stream
  • 定时器(Quartz)
  • 神经网络实现线性回归,神经网络是回归算法吗
  • MFC调用VLC库播放中文路径导致崩溃的问题
  • 微信公众号搜题功能接口
  • 5.java不同方法的区别(构造方法,实例方法,类方法,static关键字)
  • 无胁科技-TVD每日漏洞情报-2022-8-31
  • 力扣-221题 最大正方形(C++)- dp
  • 信号量(信号灯) -----//目的:实现共享内存的多个进程之间同步
  • JS解决contenteditable=“true“的光标位置放到最后
  • angular组件开发
  • Dubbo 整合 Pinpoint 做分布式服务请求跟踪
  • JAVA SE 6 GC调优笔记
  • JAVA多线程机制解析-volatilesynchronized
  • js中forEach回调同异步问题
  • oldjun 检测网站的经验
  • quasar-framework cnodejs社区
  • Redux系列x:源码分析
  • use Google search engine
  • yii2权限控制rbac之rule详细讲解
  • 闭包--闭包之tab栏切换(四)
  • 对象管理器(defineProperty)学习笔记
  • 分布式任务队列Celery
  • 利用jquery编写加法运算验证码
  • 聊一聊前端的监控
  • 浅谈Golang中select的用法
  • 云栖大讲堂Java基础入门(三)- 阿里巴巴Java开发手册介绍
  • 白色的风信子
  • mysql面试题分组并合并列
  • NLPIR智能语义技术让大数据挖掘更简单
  • 国内开源镜像站点
  • ​直流电和交流电有什么区别为什么这个时候又要变成直流电呢?交流转换到直流(整流器)直流变交流(逆变器)​
  • # 20155222 2016-2017-2 《Java程序设计》第5周学习总结
  • # 透过事物看本质的能力怎么培养?
  • #android不同版本废弃api,新api。
  • #鸿蒙生态创新中心#揭幕仪式在深圳湾科技生态园举行
  • (cljs/run-at (JSVM. :browser) 搭建刚好可用的开发环境!)
  • (c语言)strcpy函数用法
  • (C语言)球球大作战
  • (libusb) usb口自动刷新
  • (SpringBoot)第七章:SpringBoot日志文件
  • (vue)页面文件上传获取:action地址
  • (二)PySpark3:SparkSQL编程
  • (机器学习-深度学习快速入门)第三章机器学习-第二节:机器学习模型之线性回归
  • (蓝桥杯每日一题)平方末尾及补充(常用的字符串函数功能)
  • (十五)devops持续集成开发——jenkins流水线构建策略配置及触发器的使用
  • (五) 一起学 Unix 环境高级编程 (APUE) 之 进程环境
  • (转)setTimeout 和 setInterval 的区别
  • .htaccess 强制https 单独排除某个目录
  • .NET 事件模型教程(二)