`

oracle函数(一)——字符操作、数字操作、日期操作

阅读更多

 

一、函数                            (说明:本文中用到的表都是oracle提供的scott用户下的表)

    使用函数的目的是为了操作数据,将输入的变量处理,返回一个结果。变量可以有好多,传入的变量可以是列的值,也可以是表达式。

    函数可以嵌套。内层函数的结果是外层函数的变量。

    oracle函数可以分为当行函数和多行函数:

  单行函数:每一行都有一个返回值,但可以有多个变量。

  多行函数:多行有一个返回值。

 

二、单行函数的分类

  a.字符操作函数

  b.数字操作函数

  c.日期操作函数

  d.数据类型转换函数

  e.综合数据类型函数

 

三、字符操作函数

 

大小写操作函数:lower(小写), upper(大写), initcap(首字母大写)

字符串操作函数:concat, length, substr, instr, trim, replace, lpad, rpad

 

1.大小写操作函数:

select lower(ename), upper(ename),initcap(ename) from emp;
select lower('mf TR'),upper('mf TR'),initcap('mf TR') from dual;
//dual 是虚拟表

  输出:mf tr  MF TR  Mf Tr

2.concat函数:连接,将两个字符串连接到一起

select ename,job,concat(ename,job) from emp;

 

 注:oracle的concat()函数只支持两个参数,不支持两个以上字符串的拼接,如果要进行多个字符串的拼接的话,可以使用多个concat()函数嵌套使用。

例如:

select ename,job, concat(concat(ename,' _ '),job) from emp;

 

 除此之外,oracle中字符串的连接还可以使用连接符“||”,支持多个参数连接。

select '员工:' || ename || ',工作是:' || job from emp;

 3.length:字符串的长度

select length('张三') from dual;    //按照字
select lengthb('张三') from dual;    //按字节
select lengthc('张三') from dual;    //unicode的长度

 输出:2 , 4,  2。

4.substr:截取字符串。

substr(字符串,m,n),+m表示从左向右第m位开始,-m表示从右向左第m位开始(m大于0),n表示取几位。如果n没有值就是一直到字符串的结尾。

select ename,substr(ename,1,3) "first",substr(ename,-2)"last" from emp;

 输出:SMITH  SMI  TH

5.instr:查找子字符串在父字符串中的位置

instr(父字符串,子字符串):返回子字符在父字符串的位置。0表示没有在父串找到该子串。

select ename,instr(ename,'A') "A在第几位" from emp;

6.trim:截掉字符串

select trim(leading 'a' from 'aaabbabaa') from dual;
//截掉连续的前置的a
select trim(trailing 'a' from 'aaabbabaa') from dual;
//截掉连续的后置的a
select trim(both 'a' from 'aaabbabaa') from dual;
//截掉连续的前置和后置的a
select trim('a' from 'aaaabbbaa') from dual;
//如果没有说明是前置还是后置就是both全截掉

 注:trim函数是截掉头或尾连续的字符,一般我们的用途是去掉头和尾的空格。

7.lpad,rpad:左铺垫,右铺垫

select lpad(1232,6,'*'),rpad('aaccbbdd',6,'@') from dual;

 输出:**1232  aaccbb

6代表总共铺垫到多少位,* @ 是要铺垫的字符串。

注:lpad左铺垫,rpad右铺垫,一般用于美化输出结果。如果位数不足,按照截取后的结果显示,不报错。

8.replace:替换

replace(字符串,'A','B')将字符串中A字符替换为B

select replace(ename,'A','*') from emp;

 

四、数字操作函数

 

round(数字,n):四舍五入,n表示小数点后几位,0可以不写,表示取整,负数表示小数点前几位,下同

trunc(数字,n):全部舍弃

ceil(数字):取整,上进位

abs(数字):取绝对值

mod(数字A,数字B):取A除以B的余数

 

select round(45.923,2),round(45.923),round(45.234,-1) from dual;

 输出:45.92  46 50

select trunc(45.92333,2),trunc(45.92666,2),trunc(45.9247,-2) from dual;

 输出:45.92  45.92  0

select ceil(45.0002),ceil(45.666) from dual;

 输出:46  46

select abs(-23.00) from dual;

 输出:23

select mod(5,2) from dual;

输出:1 

 

五、日期操作函数

sysdate:当前数据库的日期

select sysdate from dual;

 重新设置时间显示格式

alter session set NLS_DATE_FROMAT='yyyy/mm/dd hh24:mi:ss';

 截取时间的年月日

select hiredate,trunc(hiredate,'yyyy'),trunc(hiredate,'year') from emp;

 

 注:数字的进位和截取是以小数点为中心,我们取小数点前或后的值,而日期的进位和截取是以年、月、日、时、分、秒为中心。

 

 

 

 

分享到:
评论

相关推荐

    Oracle学习笔记——day01

    Oracle数据库是世界上最流行的数据库管理系统之一,广泛用于企业级的数据存储和管理。在Oracle学习的第一天,我们主要关注了SQL语句,这是与Oracle交互的基础。SQL主要包括三种类型的语言:DML(数据操作语言)、DDL...

    ORACLE函数介绍 ORACLE函数介绍

    ### Oracle函数介绍——详解Oracle中的单值函数 #### 概述 Oracle数据库是业界领先的数据库管理系统之一,提供了丰富的内置函数来支持数据处理的各种需求。这些内置函数可以大致分为几类,包括数值型函数、字符型...

    Oracle学习笔记——day03

    在Oracle数据库的学习中,第三天的内容主要涵盖了字符类型、数值类型、日期类型以及表的约束。下面我们将逐一详细探讨这些知识点。 首先,我们来看字符类型。Oracle提供了三种基本的字符类型:`CHAR`、`VARCHAR`和`...

    韩顺平Oracle笔记——函数.pptx

    综上所述,这些函数在Oracle数据库中被广泛应用,无论是简单的字符处理、数学运算还是复杂的日期操作,都能通过这些内置函数轻松实现。掌握这些函数不仅能够提高SQL查询的效率,还能更好地满足业务需求。

    Mysql+Oracle函数文档

    这里,我们主要探讨的是它们的函数用法,通过提供的文档资源——"MySQL_5.1_zh.chm" 和 "oracle函数大全(分类显示).chm",我们可以深入了解这两个数据库系统的函数功能和应用场景。 首先,MySQL 是一款开源、免费的...

    Oracle经典教程1——走进Oracle

    #### Oracle函数 Oracle提供了丰富的内置函数,用于进行数值计算、字符串操作、日期处理等多种任务。例如: 1. **数值函数**:如`ROUND`、`TRUNC`等。 2. **字符串函数**:如`CONCAT`、`SUBSTR`等。 3. **日期函数...

    ORACLE字符集浅析——异种字符集数据库间的数据存取方法探讨.pdf

    Oracle字符集是数据库管理系统Oracle中的一个关键概念,用于定义数据的编码方式,使得数据库能够存储和处理各种语言的字符。本文主要探讨了在不同字符集的Oracle数据库间如何有效地进行数据存取。Oracle的全球化支持...

    oracle新手入门指导之三——ORACLE常用函数大全 .txt

    ### Oracle新手入门指导之三——ORACLE常用函数大全 在Oracle数据库的学习过程...以上列举了部分常用的Oracle函数,熟练掌握这些函数可以帮助我们在处理数据时更加高效灵活。希望本文能够对Oracle新手的学习有所帮助。

    oracle函数介绍和vi全屏幕编辑器常用命令集锦

    一、Oracle函数详解 1. **SELECT INTO**:这个SQL语句用于从查询结果中将一行数据赋值给变量。例如,`SELECT column INTO variable FROM table WHERE condition;` 这种方式在处理单行记录时非常实用。 2. ** NVL**...

    C#版Oracle数据库通用操作类

    本文将深入探讨一个用于简化 Oracle 数据库操作的 C# 类——`ConnForOracle`。该类提供了一系列方法,包括基础连接、执行 SQL 语句、数据集分页处理等。 #### 一、概述 `ConnForOracle` 类主要实现了对 Oracle ...

    oracle 内置sql函数

    **F.2 字符函数——返回数字** 有一些字符函数可以将字符转换为数字,如`TO_NUMBER`,它可以将字符串转换为数值,这对于处理混合数据非常有用。 **F.3 数字函数** 数字函数主要处理数值运算,如`ROUND`用于四舍五...

    Oracle函数与表达式.pptx

    综上所述,Oracle函数与表达式构成了强大的工具集,帮助数据库管理员和开发人员高效地处理数据,完成各种复杂的数据操作和分析任务。理解并熟练掌握这些函数和表达式,对于提升数据库管理效率至关重要。

    oracle获取汉字拼音和拼音首字母的功能函数

    Oracle提供了一个强大的特性——Java PL/SQL,允许我们在数据库中编写和执行Java代码。我们可以利用Java的类库,如Pinyin4j,来实现汉字到拼音的转换。首先,需要在数据库中创建一个Java源代码对象,包含Pinyin4j的...

    oracle新手入门指导之三续——精简ORACLE常用函数大全.txt

    根据提供的文件信息,本文将对Oracle数据库中的常用函数进行详细介绍,尤其关注文本处理与日期处理相关的函数,旨在帮助Oracle新手更好地理解和应用这些函数。 ### 文本处理函数 #### 大小写转换 - **UPPER**:将...

    Oracle应用项目——简单数据查询原理.pdf

    Oracle数据库系统是全球广泛使用的数据库管理系统之一,它提供了强大的数据管理和查询能力。本篇文章将深入解析Oracle中的简单数据查询原理,这些原理是数据库管理员和开发人员日常工作中不可或缺的基础知识。 1. *...

    Oracle110个常用函数……PDF清晰版

    ### Oracle110个常用函数——PDF清晰版 #### 描述: 本资料是基于网络资源整理而成的Oracle数据库110个常用函数汇总,旨在帮助读者更好地理解和掌握这些函数的应用场景和技术细节。这些函数不仅适用于求职面试准备...

    Oracle 函数大全[字符串函数,数学函数,日期函数]第1/4页

    SQL中的单记录函数 1.ASCII 返回与指定的字符对应的十进制数; SQL> select ascii(‘A’) A,ascii(‘a’) a,ascii(‘0’) zero,ascii(‘ ‘) space from dual; A A ZERO SPACE ——— ——— ——— ——— 65 97 48 ...

    oracle内置SQL函数分类整理

    Oracle内置SQL函数-分类整理大全 ...F.2字符函数——返回数字 F.3数字函数 F.4日期函数 F.5转 换 函 数 F.6分 组 函 数 F.7其 他 函 数 F.8 SQLPLUS常用命令 F.9 oracle客户端连接的文件配置: F.10修改表结构

Global site tag (gtag.js) - Google Analytics