Oracle数据库实用函数

Oracle实用函数 decode 语法如下: decode(value, if1, then1, if2,then2,if3,then3, . . . else ) Value 代表某个表的任何类

Oracle实用函数

decode

语法如下:  

decode(value, if1, then1, if2,then2,if3,then3, . . . else ) Value 代表某个表的任何类型的任意列或一个通过计算所得的任何结果。当每个value值被测试,如果value的值为if1,Decode 函数的结果是then1;如果value等于if2,Decode函数结果是then2;等等。事实上,可以给出多个if/then 配对。如果value结果不等于给出的任何配对时,Decode 结果就返回else 。  需要注意的是,这里的if、then及else 都可以是函数或计算表达式。

实例

 

INSTR

返回要查找字符的位置

 

 

CASEWHEN

详见

–简单Case函数

CASE sex

WHEN ‘1’ THEN ‘男’

WHEN ‘2’ THEN ‘女’

ELSE ‘其他’ END

–Case搜索函数

CASE

WHEN sex = ‘1’ THEN ‘男’

WHEN sex = ‘2’ THEN ‘女’

ELSE ‘其他’ END

 

decode只能做等值的,case when可以做区间的,使用范围来进行条件区分,decode能做到的,case when也能做到;效率方面,个人觉得两者效率差不多;但decode的语法要简单些,但它只能做等值的比较;case when end 能做条件的判断。

SUBSTR

substr() 函数返回字符串的一部分。

语法:substr(string,start,length)

string – 指定的要截取的字符串。

start – 必需,规定在字符串的何处开始。

正数 – 在字符串的指定位置开始

负数 – 在从字符串结尾的指定位置开始

0 – 在字符串中的第一个字符处开始

length – 可选,指定要截取的字符串长度,缺省时返回字符表达式的值结束前的全部字符。

例如:select substr(‘abcdefg’,3,4) from dual;结果是cdef

select substr(‘abcdefg’,-3,4) from dual;结果efg

 

Oracle正则表达式函数:

regexp_like、regexp_substr、regexp_instr、regexp_replace

——————————————————————————–

 

Linux-6-64下安装Oracle 12C笔记

 

在CentOS 6.4下安装Oracle 11gR2(x64)

 

Oracle 11gR2 在VMWare虚拟机中安装步骤

 

Debian 下 安装 Oracle 11g XE R2

 

——————————————————————————–

REPLACE

replace(x,y,z)返回值为将串X中的Y串用Z串替换后的结果字符串。若省略Z参数,,则将串X中为Y串的地方删除

SELECT REPLACE(‘JACK and JUE’,’J’,’BL’) “Changes” FROM DUAL;

Changes

————–

BLACK and BLUE

例子

有一个列导入的数据应该时‘2011-10-11’的格式,结果导入的数据为‘2011/10/11’格式的,5000多条记录要一条条改基本不可能。 后来想到了replace这个函数,具体用法如下:

update 表1 t set t.列1=replace((select 列1 from 表1 a where a.主键列=t.主键列) ,’/’ , ‘-‘ ) 解决了我们问题。

replace 函数用法如下:

 

select”PARENTNAME”, “MEMBERNAME”, “ALIAS”

‘ProductTotal’ membername,

from dual)

 

 

CONNECT BY

Oracle “CONNECT BY”是层次查询子句,一般用于树状或者层次结果集的查询。其语法是:

[ START WITH condition ]

 

CONNECTBY [ NOCYCLE ] condition

1. 可用来生成序列

SELECT ROWNUM FROM DUAL CONNECT BY ROWNUM

2.可用来实现树状查询

CONNECT BY rownum

 

详见

 

RPAD

rpad函数从右边对字符串使用指定的字符进行填充   rpad(string,padded_length,[pad_string])  

string 表示:被填充的字符串   

padded_length 表示:字符的长度,是返回的字符串的数量,如果这个数量比原字符串的长度要短,rpad函数将会把字符串截取成从左到右的n个字符;   

pad_string 是个可选参数,这个字符串是要粘贴到string的右边,如果这个参数未写,lpad函数将会在string的右边粘贴空格。   

例如:  

rpad(‘tech’, 7); 将返回’tech ‘   

rpad(‘tech’, 2); 将返回’te’   

rpad(‘tech’, 8, ‘0’); 将返回’tech0000’  

rpad(‘tech on the net’, 15, ‘z’); 将返回 ‘tech onthe net’   

rpad(‘tech on the net’, 16, ‘z’); 将返回 ‘tech onthe netz’

 

TRUNC

TRUNC函数返回以指定元素格式截去一部分的日期值。

1.select trunc(sysdate) from dual 2.select trunc(sysdate, ‘mm’) from dual 3.select trunc(sysdate,’yy’) from dual4.select trunc(sysdate,’dd’) from dual5.select trunc(sysdate,’yyyy’) from dual6.select trunc(sysdate,’d’) from dual7.select trunc(sysdate, ‘hh’) from dual 8.select trunc(sysdate, ‘mi’) from dual 9.select trunc(123.458) from dual–123
10.select trunc(123.458,0) from dual–123
11.select trunc(123.458,1) from dual –123.4
12.select trunc(123.458,-1) from dual–120
13.select trunc(123.458,-4) from dual–0
14.select trunc(123.458,4) from dual –123.458
15.select trunc(123) from dual –123
16.select trunc(123,1) from dual–123
17.select trunc(123,-1) from dual–120

 

一下语句会经常用到,相当于不用创建表而可以插入几条数据

 

 

ADD_MONTHS

ADD_MONTHS(d,n)–时间点d再加上n个月

更多详情见请继续阅读下一页的精彩内容:

linux

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至253000106@qq.com举报,一经查实,本站将立刻删除。

发布者:PHP中文网,转转请注明出处:https://www.chuangxiangniao.com/p/1970805.html

(0)
上一篇 2025年2月23日 07:54:27
下一篇 2025年2月23日 07:54:41

AD推荐 黄金广告位招租... 更多推荐

相关推荐

  • 小白学Oracle第二关之第一个oracle数据库表的创建

    现如今在实际工作中,在数据库中创建表是经常会用到的。本文中小编主要给大家来分享一下在数据库如何通过sql语句去创建表。首先,先使用plsql连接到oracle数据库,先保证下面的服务是开启的。   我们本次创建表的需求是:创建一张班级表,和…

    2025年2月23日 数据库
    100
  • 数据库种类

    什么是数据库? 简单的说,数据库(英文Database)就是一个存放数据的仓库,这个仓库是按照一定的数据结果(数据结构是指数据的组织形式或数据之间的联系)来组织、存储的、我们可以通过数据库提供的多种方法来管理数据库里的数据更简单的形象理解,…

    2025年2月23日
    100
  • 常用的关系型数据库有哪些?

    关系数据库,是建立在关系模型基础上的数据库,借助于集合代数等数学概念和方法来处理数据库中的数据。现实世界中的各种实体以及实体之间的各种联系均用关系模型来表示。标准数据查询语言sql就是一种基于关系数据库的语言,这种语言执行对关系数据库中数据…

    2025年2月23日
    100
  • 数据库的事务隔离级别有哪些?

    在数据库操作中,为了有效保证并发读取数据的正确性,提出的事务隔离级别。在标准sql规范中,定义了4个事务隔离级别,不同的隔离级别对事务的处理不同。下面本篇文章就来给大家介绍一下事务隔离级别,希望对你们有所帮助。 一般的数据库,包括四种隔离级…

    2025年2月23日
    100
  • 数据库备份的两种方法是什么

    数据库备份的两种方法是:1、使用mysqldump结合exec函数进行数据库备份;2、使用【php+mysql+header】函数进行数据库备份。 数据库备份是必要的一般都是使用mysqldump进行备份,我这边写了两种备份方法可以参考一下…

    2025年2月23日
    100
  • 浅谈数据库的存储过程

    什么是存储过程       如果你接触过其他的编程语言,那么就好理解了,存储过程就像是方法一样。   竟然他是方法那么他就有类似的方法名,方法要传递的变量和返回结果,所以存储过程有存储过程名有存储过程参数也有返回值。    存储过程的优点:…

    2025年2月23日
    100
  • 数据库添加语句是什么

    数据库添加语句是insert into语句。 INSERT INTO 语句用于向表中插入新记录。 SQL INSERT INTO 语法 INSERT INTO 语句可以有两种编写形式。 第一种形式无需指定要插入数据的列名,只需提供被插入的值…

    2025年2月23日
    100
  • 数据库设计过程不包括什么

    数据库设计过程不包括算法设计。 数据库设计过程主要包括需求分析、概念结构设计、逻辑结构分析、数据库物理设计、数据库实施、数据库运行和维护阶段。 数据库设计 数据库设计(Database Design)是指对于一个给定的应用环境,构造最优的数…

    2025年2月23日
    100
  • sql指的是什么

    推荐教程:sql教程 简介   SQL (Structured Query Language) 是具有数据操纵和数据定义等多种功能的数据库语言,这种语言具有交互性特点,能为用户提供极大的便利,数据库管理系统应充分利用SQL语言提高计算机应用…

    2025年2月23日
    100
  • 数据库的并发操作可能带来的问题有哪些

    推荐教程:sql教程 什么是数据库并发操作   数据库是一个共享资源,可以提供多个用户使用。这些用户程序可以一个一个地串行执行,每个时刻只有一个用户程序运行,执行对数据库的存取,其他用户程序必须等到这个用户程序结束以后方能对数据库存取。但是…

    2025年2月23日
    100

发表回复

登录后才能评论