单行函数语法:

语法:funcation_name(列 | 表达式[, 参数1, 参数2])

单行函数主要分为以下几种:

  • 字符函数:接收数据返回具体的字符信息
  • 数值函数:对数字进行处理,例如:四舍五入
  • 日期函数:直接对日期进行相关的操作
  • 转换函数:日期、字符、数字之间可以完成互相转换功能
  • 通用函数:Oracle自己提供的有特色的的函数

字符函数:

在Oracle里面所有的验证操作必须存在完整SQL语句之中,所以如果现在只是进行功能验证,使用的是一张具体的表。

SELECT UPPER('LiXingHua') FROM emp;

因为emp有14行记录,所以会重复显示14行。如果emp表中的数据很多,即使用DISTINCT消除,代码的代价还是很高。所以现在希望有一张表进行用户验证,所以在Oracle里提供dual的数据表(dual是张虚拟表)。

范例:验证 UPPER() 和 LOWER()

SELECT UPPER('LiXingHua'), LOWER('MLDN') FROM dual;

范例:

范例:

首字母大写,那么一定其他字母都是小写,可以利用INITCAP()函数进行处理。

范例:替换使用的是REPLACE()函数。

范例:计算长度,使用LENGTH()函数,长度返回的数据是数值型数据。

范例:截取操作使用SUBSTR()函数

截取函数SUBSTR()的两种形式:

  • 从指定位置截取到结尾:SUBSTR(列 | 字符串, 截取开始点)
  • 截取部分的字符串:SUBSTR(列 | 字符串, 截取开始点, 截取个数)

在Oracle数据库中,下标都是从1开始,如果设置为0,也会自动转换为1。

范例:

范例:

截取姓名之中的后三个,开始点的确定:

  • 实现一:先求得姓名的长度,而后减2
  • 实现二:设置开始点为负数

注意:Java语言里的substring()方法,是不够设置负数的。

面试题: 请问Oracle中的SUBSTR()函数的下标开始点是从0开始还是从1开始。

Oracle也可以设置为1,即使使用了0,那么最终的结果也会将其定义为1。

范例:返回dual中“l”的ASCII码

范例:

范例:(ltrim 左边裁减掉指定字符串  trim 修减)

不管如何消除,中间的空格是无法消除的。

范例:(pad 填补)

范例:(instr 指示书,指导人)

如果查找到要找的内容,那么此函数会返回位置,如果找不到,就返回0。

这个函数和Java中的 indexOf() 方法功能相同的。

Oracle(字符函数)的更多相关文章

  1. Oracle字符函数(转换大小写,替换等)

    在oracle中,有一些字符函数: upper(字符串):转换为大写lower(字符串):转换为小写initcap(字符串):首字母大写replace(字符串1,字符串2,字符串3):将串1中所有的串 ...

  2. Oracle字符函数length substr concat实例

    --字符函数 --伪表dual --(1)求字符串长度 select length('123.456/-*') from dual --(2)截取函数求字符串的子串 ,) from dual --(3 ...

  3. oracle字符函数

    UPPER(char) 小写转大写 LOWER(char) 大写转小写 INITCAP(char) 首字母转换 SUBSTR(char,[m[,n]]) 截取字符串函数 从源字符串char的m开始截取 ...

  4. ORACLE 常用字符函数

    ORACLE 常用字符函数1 ASCII(arg1)返回参数arg1的十进制数字表示.如果数据库设置为ASCII,则采用的是ASCII码字符.如果设置为EBCDIC,则采用的是EBCDIC字符 sel ...

  5. oracle 常用sql字符函数介绍

    常用字符函数介绍 1.ascii 返回与指定的字符对应的十进制数: SQL>select ascii('A') A,ascii('a') a,ascii('0') zero,ascii(' ') ...

  6. oracle 10g函数大全--字符型函数

    ASCII(x1) [功能]:返回字符表达式最左端字符的ASCII 码值. [参数]:x1,字符表达式 [返回]:数值型 [示例] SQL> select ascii('A') A,ascii( ...

  7. 【函数】Oracle函数系列(1)--字符函数

    [函数]Oracle函数系列(1)--字符函数 1  BLOG文档结构图 2  前言部分 2.1  导读和注意事项 各位技术爱好者,看完本文后,你可以掌握如下的技能,也可以学到一些其它你所不知道的知识 ...

  8. Oracle 截取、查找字符函数(持续更新)

    整理一些常用的截取.查找字符函数: 1.查找某一个字符串中某一个字符(串)出现的次数 SELECT LENGTH(REGEXP_REPLACE(REPLACE('anne<br>lily& ...

  9. Oracle之现有表上建新表、操作符、字符函数

    #PLSQL技术培训15页PPT利用现有表创建表(百度) 说明:做新操作前要对旧表备份  具体百度 语法: create table <new_table_name> as select ...

随机推荐

  1. 在nginx的http模块下面,一个server就可以看做一个站点,配置形式大概是这样的:

    http { index index.php index.htm index.html; server { server_name www.site1.com; location / { # [... ...

  2. 关于scrapy下载文件重命名的办法以及对应url没有文件后缀的办法

    https://www.jianshu.com/p/d1bb28cbb6a8 scrapy中负责下载文件的是class MyFilesPipeline(FilesPipeline)类 其中负责下载文件 ...

  3. Python求最大可能

    也称为求一个集合的所有的子集 采用二进制方法: def PowerSetsBinary(items): #generate all combination of N items N = len(ite ...

  4. 【题解】Luogu P4363 [九省联考2018]一双木棋chess

    原题传送门 这道题珂以轮廓线dp解决 经过推导,我们珂以发现下一行的棋子比上一行的棋子少(或等于),而且每一行中的棋子都是从左向右依次排列(从头开始,中间没有空隙) 所以每下完一步棋,棋盘的一部分是有 ...

  5. rman备份例子

    1.全备份例子 #!/bin/sh RMAN_OUTPUT_LOG=/home/oracle/rman_output.logRMAN_ERROR_LOG=/home/oracle/rman_error ...

  6. Linux下调整ext3分区大小【转】

    本文转载自:https://blog.csdn.net/cruise_h/article/details/22403529 本文讨论如何再不丢失数据的情况下调整已有ext3分区的大小,包括: 压缩已有 ...

  7. HDU 1848 Fibonacci again and again【博弈SG】

    Problem Description 任何一个大学生对菲波那契数列(Fibonacci numbers)应该都不会陌生,它是这样定义的: F(1)=1; F(2)=2; F(n)=F(n-1)+F( ...

  8. thinkphp在前端页面的js代码中可以使用 U方法吗? 可以使用模板变量如__URL__等吗?

    thinkphp在前端页面的js代码中可以使用 U方法吗? : 可以的! tp的U方法, 是"全局的", 什么是全局的? 就是, 可以在 "任何地方"使用的: ...

  9. 160CrackMe练手 001

    peid判断无壳,打开输入伪码注册,根据报错od查找字符串 接下来定位到字符串周边代码 0042FA15 |. 8D55 F0 lea edx,[local.4] 0042FA18 |. 8B83 D ...

  10. fhqtreap初探

    介绍 fhqtreap为利用分裂和合并来满足平衡树的性质,不需要旋转操作的一种平衡树. 并且利用函数式编程可以极大的简化代码量. (题目是抄唐神的来着) 核心操作 (均为按位置分裂合并) struct ...