循序渐进学Oracle之函数(重点)
单行函数—字符函数虽然各个数据库都是支持SQL语句的,但是每一个数据库也有每一个数据库自己所支持的操作函数,这些就是单行函数,而如果要想进行数据库开发的
单行函数—字符函数
虽然各个数据库都是支持SQL语句的,但是每一个数据库也有每一个数据库自己所支持的操作函数,这些就是单行函数,而如果要想进行数据库开发的话,除了要会使用SQL之外,就是要多学习函数。
单行函数主要分为以下五类:字符函数、数字函数、日期函数、转换函数、通用函数;
1-字符函数:
字符函数的功能主要是进行字符串数据的操作,下面给出几个字符函数:
* UPPER(字符串|列):将输入的字符串变为大写返回;
* LOWER(字符串|列):将输入的字符串变为小写返回;
* INITCAP(字符串|列):开头首字母大写;
* LENGTH(字符串|列):求出字符串的长度;
* REPLACE(字符串|列):进行替换;
*SUBSTR(字符串|列,开始点[结束点]):字符串截取:
Oracle之中有一点比较麻烦,即使要验证字符串,也必须编写完整的SQL语句,所以在Oracle数据库之中为了用户的查询方便,故专门提供了一个“dual”的虚拟表。
范例1:观察转大写的函数
SELECT UPPER('hello') FROM dual ;范例6:使用字母“_”替换姓名中所有字母“A”的信息;
col REPLACE(ename,'A','_') FORMAT A50 ; SELECT REPLACE(ename,'A','_') FROM emp ;字符串截取操作有两种语法:
|-语法一:SUBSTPR(字符串|列,开始点),表示从开始点一直截以到结尾;
|-语法二:SUBSTPR(字符串|列,开始点,结束点),表示从开始点一直截以到结束点,截取部分内容;
范例7: 语法一:SUBSTPR(字符串|列,开始点),香港虚拟主机,表示从开始点一直截以到结尾;
SELECT ename,SUBSTR(ename,3) FROM emp ; //从第3个字符开始一直到结尾!范例8:语法二:SUBSTPR(字符串|列,开始点,结束点),表示从开始点一直截以到结束点,截取部分内容;
SELECT ename,SUBSTR(ename,0,3) FROM emp ; //截取前3个字符! SELECT ename,SUBSTR(ename,1,3) FROM emp ; //截取前3个字符!范例9:要求截取每个雇员姓名的后三个字母;
* 正常思路:通过长度-2确定开始点
SELECT ename,SUBSTR(ename,LENGTH(ename)-2) FROM emp ;* 新思路:设置负数,表示从后指定截取位置
SELECT ename,SUBSTR(ename,-3) FROM emp ;面试题:
1、请问SUBSTR()函数截取的时候下标是从0,还是从1开始?
* 在Oracle数据库之中,SUBSTR()函数从0或1开始都是一样的;(见范例8)
* SUBSTR()函数也可以设置为负数,表示由后指定截取开始点;(见范例9)
2-数字函数
数字函数一共有3个:
* ROUND(数字|列[,保留小数的位数]):四舍五入的操作;
* TRUNC(数字|列[,保留小数的位数]):舍弃指定位置的内容;
* MOD(数字1,数字2):取模,取余数;
范例10:验证ROUND()函数
SELECT ROUND(903.5) FROM dual ;范例11:验证TRUNC()函数
SELECT TRUNC(903.5),TRUNC(-903.53567),TRUNC(903.53567,-1),TRUNC(903.53567,2) FROM dual ;范例12:验证MOD()函数
SELECT MOD(10,3) FROM dual ;以上的三个主要的数学函数,在学习Java中也会有相匹的内容!
2-日期函数
如果现在要想进行日期的操作,则首先有一个必须要解决的问题,就是如何取得当前的日期, 这个当前日期可使用“SYSDATE”取得,代码如下:
SELECT SYSDATE FROM dual ;范例13:除了以上的当前日期之外,在日期中也可以进行若干计算:
* 日期 + 数字 = 日期,表示若干天之后的日期;
SELECT SYSDATE+3,SYSDATE+300 FROM dual ;* 日期 - 数字 = 日期,表示若干天前的日期;
SELECT SYSDATE-3,SYSDATE-300 FROM dual ;* 日期 – 日期 = 数字,表示的是两个日期的天数,但是肯定是大日期 – 小日期;
范例14:求出每个雇员到今天为止的雇佣天数;
SELECT ename,hiredate,SYSDATE-hiredate FROM emp ;注:而且很多编程语言之中,也都会提出一种概念,日期可以通过数字表示出来!
除了以上三个公式之外,网站空间,也提供了以下四个操作函数:
* LAST_DAY(日期):求出指定日期的最后一天;
范例15:求出本月的最后一天日期
SELECT LAST_DAY(SYSDATE) FROM dual ;* NEXT_DAY(日期,星期数):求出下一个指定星期X的日期;
范例16:求出下一个周一
SELECT NEXT_DAY(SYSDATE,'星期一') FROM dual ;* ADD_MONTHS(日期,数字):求出若干月之后的日期;
范例17:求出4个月后是何时
SELECT ADD_MONTHS(SYSDATE,4) FROM dual ;* MONTHS_BETWEEN(日期1,日期2):求出两个日期之间所经历的月份;
范例18:求出每个雇员到今天为止的雇佣月份;
SELECT ename,hiredate,MONTHS_BETWEEN(SYSDATE,hiredate) FROM emp ; SELECT ename,hiredate,TRUNC(MONTHS_BETWEEN(SYSDATE,hiredate)) FROM emp ;在所有的开发之中,如果是日期的操作,建议使用以上函数,因为这些函数可以避免闰年的问题。
4-转换函数(核心)
现在已经接触到了Oracle数据库之中的三种数据:数字(NUMBER)、字符串(VACHAR2)、日期(DATE),转换函数的主要功能是完成这几种数据间的相互转换的操作,一共有三种转换函数:
* TO_CHAR(字符串|列,格式字符串):将日期或者是数字变为字符串显示;
* TO_DATE(字符串,格式字符串):将字符串变为DATE数据显示;
* TO_NUMBER(字符串):将字符串变为数字显示;
1、TO_CHAR()函数
在之前查询过当前的系统日期时间:
SELECT SYSDATE FROM dual ;这个时候是按照“日-月-年”的格式显示,很明显此格式不符合于正常的思路,正常是“年-月-日”,

热AI工具

Undresser.AI Undress
人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover
用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool
免费脱衣服图片

Clothoff.io
AI脱衣机

Video Face Swap
使用我们完全免费的人工智能换脸工具轻松在任何视频中换脸!

热门文章

热工具

记事本++7.3.1
好用且免费的代码编辑器

SublimeText3汉化版
中文版,非常好用

禅工作室 13.0.1
功能强大的PHP集成开发环境

Dreamweaver CS6
视觉化网页开发工具

SublimeText3 Mac版
神级代码编辑软件(SublimeText3)

Oracle 打不开的解决办法包括:1. 启动数据库服务;2. 启动监听器;3. 检查端口冲突;4. 正确设置环境变量;5. 确保防火墙或防病毒软件未阻止连接;6. 检查服务器是否已关闭;7. 使用 RMAN 恢复损坏的文件;8. 检查 TNS 服务名称是否正确;9. 检查网络连接;10. 重新安装 Oracle 软件。

解决 Oracle 游标关闭问题的方法包括:使用 CLOSE 语句显式关闭游标。在 FOR UPDATE 子句中声明游标,使其在作用域结束后自动关闭。在 USING 子句中声明游标,使其在关联的 PL/SQL 变量关闭时自动关闭。使用异常处理确保在任何异常情况下关闭游标。使用连接池自动关闭游标。禁用自动提交,延迟游标关闭。

Oracle 中,FOR LOOP 循环可动态创建游标, 步骤为:1. 定义游标类型;2. 创建循环;3. 动态创建游标;4. 执行游标;5. 关闭游标。示例:可循环创建游标,显示前 10 名员工姓名和工资。

可以通过 EXP 实用程序导出 Oracle 视图:登录 Oracle 数据库。启动 EXP 实用程序,指定视图名称和导出目录。输入导出参数,包括目标模式、文件格式和表空间。开始导出。使用 impdp 实用程序验证导出。

Oracle 日志文件写满时,可采用以下解决方案:1)清理旧日志文件;2)增加日志文件大小;3)增加日志文件组;4)设置自动日志管理;5)重新初始化数据库。在实施任何解决方案前,建议备份数据库以防数据丢失。

Oracle不仅是数据库公司,还是云计算和ERP系统的领导者。1.Oracle提供从数据库到云服务和ERP系统的全面解决方案。2.OracleCloud挑战AWS和Azure,提供IaaS、PaaS和SaaS服务。3.Oracle的ERP系统如E-BusinessSuite和FusionApplications帮助企业优化运营。

在CentOS系统上搭建Hadoop分布式文件系统(HDFS)需要多个步骤,本文提供一个简要的配置指南。一、前期准备安装JDK:在所有节点上安装JavaDevelopmentKit(JDK),版本需与Hadoop兼容。可从Oracle官网下载安装包。环境变量配置:编辑/etc/profile文件,设置Java和Hadoop的环境变量,使系统能够找到JDK和Hadoop的安装路径。二、安全配置:SSH免密登录生成SSH密钥:在每个节点上使用ssh-keygen命令

要停止 Oracle 数据库,请执行以下步骤:1. 连接到数据库;2. 优雅关机数据库(shutdown immediate);3. 完全关机数据库(shutdown abort)。
