单行函数语法:

语法: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. linux下VLAN设置

    1. 安装vlan(vconfig)和加载8021q模块 [root@test0001~]#yum install vconfig [root@test0001~]#modprobe 8021q [r ...

  2. Python-OpenCV基本操作cv2

    1.图片加载.显示和保存 import cv2 # 生成图片 img = cv2.imread("1.jpg") # 生成灰色图片 imgGrey = cv2.imread(&qu ...

  3. Golang并发编程有缓冲通道和无缓冲通道(channel)

    无缓冲通道 是指在接收前没有能力保存任何值得通道.这种类型的通道要求发送goroutine和接收goroutine同时准备好,才能完成发送和接收操作.如果两个goroutine没有同时准备好,通道会导 ...

  4. 使用nc命令传输文件和文件夹

    相比较常用的scp,nc命令传文件不需要建立ssh连接和输入密码,方便快捷:尤其是在只能用key登录的机器上: 传文件: 先在目标机器执行命令准备好接收(1221为任意可用端口) nc -l 1221 ...

  5. [ERROR] InnoDB: Trying to access page number 7 in space 957, space name XXX which is outside the tablespace bounds

    早上,测试说演示环境mysql老实断开重连,一update就挂,经查日志,有如下异常: 2017-04-05T23:13:01.729250+08:00 17065 [ERROR] InnoDB: T ...

  6. 【题解】Luogu P1533 可怜的狗狗

    原题传送门 莫队介绍,Splay介绍 离线的题目,莫队是不错的解决方法 先把询问排一下序 剩下就套一个莫队的板子 每来一只狗就把漂亮值插入平衡树 每去掉一只狗就把漂亮值从平衡树中删掉 每次查询查平衡树 ...

  7. Java线程池详解,看这篇就够了!

    构造一个线程池为什么需要几个参数?如果避免线程池出现OOM?Runnable和Callable的区别是什么?本文将对这些问题一一解答,同时还将给出使用线程池的常见场景和代码片段. 基础知识 Execu ...

  8. 20145308 《网络对抗》 Web应用 学习总结

    20145308 <网络对抗> Web应用 学习总结 实验内容 (1)Web前端HTML (2)Web前端javascipt (3)Web后端:MySQL基础:正常安装.启动MySQL,建 ...

  9. QML中打印

    1.console.log("123"); 2.console.log("a is ", a, "b is ", b); 3.打印代码块时间 ...

  10. FBX SDK在vs 2010下面的配置

    1.下载FBS SDK.地址.因为我是vs2010,所以我下载的是FBX SDK 2016.1.2 VS2010.如果没有了,你可以找博主直接要,QQ1240957820. 2.下载下来的是一个exe ...