在oracle数据库中,有很多内置函数,这些内置函数可以帮助数据库管理员(或者程序员)能够快速提升代码编写能力,减少复杂逻辑而所消耗的大量时间,本章主要叙述的是内置函数一个分支-字符串
(1) 链接函数1-concat()
该函数主要格式如下所示:

concat(a,b)

代表a与b连接并且输入,输出到一个字段所在的列中,举例如下:(dual是伪表,该伪表不带有任何数据,也就是说是一个“空表”)

select concat('大家好',',我是刘明君') from dual

(2)连接函数2——‘||’
concat()函数虽然前期到连接作用,但是有一定的局限性,只能连接两个函数,不能连接多个函数,那么该函数很友好的解决了该问题,格式如下所示:

字符串1:字符串2:字符串3……………………

那么在数据库sql编译界面中举例如下:

select '张三'||'1989-01-01'||'23' from dual

(3) length()求字符串的长度
该函数就是求一下当前字符串的长度,其格式如下所示:

length(char||varchar2);

虽然该函数很快解决问题,但是他也有一定的局限性,就是定长的char类型和不定长的varchar2类型,那么,我们可以测试如下,首先先建立表,都存储的是姓名,区别是数据类型不同。

create table o_c_v(cname char(20),vname varchar2(20)
)

然后我在都插入一样的名字,举例如下:

insert into o_c_v(cname,vname) values('张三','张三');

然后我再求出两个不同数据类型相同字符串的长度,代码如下:

select length(cname),length(vname) from o_c_v;

第一个输出的就是16,第二个输出就是2,那么第二个就是我所输入的实际汉字的长度,那么第一个是啥,按照我的理解,就是剩下的存储空间,(该现象我有点懵,望高人指点)。
(4)Upper()
该函数就是将里面的字符串的所有的字母都转化为大写,这个相信C#,JAVA,javaScrpt编程人员都会遇到过类似于函数,那么示例如下:

select UPPER('nihaO') from dual

输出结果就是“NIHAO”。
(5)lower()
该函数的作用就是将括号里面的字符串都转化成小写字母,示例如下:

select LOWER('NIHAO wojiushi') from dual

输出的结果就是“nihao wojiushi”;
(6)initcap()
该函数的主要功能就是将括号内字符串的每一个单词的首字母的大写,就是类似于编程语言的驼峰命名法,主要示例如下所示:

select INITCAP('nihao wojiushi') from dual

输出的结果就是”Nihao Wojiushi”;
(7)ltrim(char1,char2)
该函数的主要功能就是char1字符串从左向右遍历,只要每一个字符满足char2中任意一个字符就删除,直到char1某个字符在char2中没有为止。那么示例如下所示:

select ltrim('abcabcabchabcabcabc','abc') from dual

结果就是’habcabcabc’;
(8)rtrim(char1,char2)
该函数与上述的ltrim函数正好相反,该函数char1从右向左遍历,只要满足该字符在char2中也存在就删除,只要char1中遍历到不符合char2中任意一个字符,那么就停止,主要示例如下所示:

select rtrim('abcabcabchabcabcabc','abc') from dual

输出的结果就是’abcabcabch’。
(9)trim(char1 from char2)
该函数主要功能就是将左右两边同时遍历char2,只要满足每一个字符等于char1时就删除,直到不满足该条件为止,主要示例如下所示:

select trim('a' from 'abcabcabchabcabcabc') from dual

结果就是:’bcabcabchabcabcabc’。
(10)lpad(str1,i,char2)
该函数的主要功能就是左补位,过程就是str1从右到左开始计数,如果所记的数的结果大于i,就将余下的字符进行截取(截断舍弃),否则小于i,那么在不足的地方补char2字符,否则不进行任何操作,示例如下所示:

select lpad('nihao',10,' ') from dual

(11)rpad(str1,i,char2)
该函数也是与lpad函数正好相反,该函数的主要功能就是str1从左向右开始计数,主要所的的长度小于i就在右边补char2的值,如果大于i就把右边剩余的数进行截断。否则不做任何操作,示例如下所示:

select rpad('nihao',10,'1') from dual

(12)substr(str1,i,j)
该函数的主要功能就是截取str1的字串,i是从哪开始,j是截取的长度,主要示例如下所示:

select substr('jeetkundao',2,1) from dual

该函数执行的结果就是‘e’。
(13)instr(str1,str2.i,j)
该函数的主要功能就是str1中存在str2所在位置,i是从哪开始遍历,j是出现第几次,他们两默认值都是1.(在字符串遍历时从1开始遍历,与编程语言的遍历方式不同),示例如下所示:

select instr('inlllininin','in',1,2) from dual

所运行的结果是6

数据库内置函数——关于字符串的操作相关推荐

  1. mysql数据库内置函数大全_MySQL数据库——内置函数

    MySQL数据库--内置函数 建表并插入数据 create table student( id char(36) primary key, name varchar(8) not null, age ...

  2. mysql数据库内置函数大全_(MariaDB)MySQL内置函数大全

    本文目录: 1. 字符串函数 1.1 字符串连接函数 1.2 lower().upper().left().right() 1.3 填充函数lpad()和rpad() 1.4 trim().ltrim ...

  3. oracle日期转数值的函数,oracle数据库内置函数之数值函数、字符函数、日期函数、转换函数及其在查询语句中的运用...

    数值函数: 1.四舍五入函数round() from dual:一行一列组成 select round(23.4) from dual;--默认不写m表示m为0 select round(23.45, ...

  4. python update函数会调用哪些内置函数_Python字典的内置函数中没有 append()操作,可以用 update()来更新字典内容...

    Python字典的内置函数中没有 append()操作,可以用 update()来更新字典内容 答:√ 在同一代昭穆的兄弟中,以年岁序位. 答:对 <舆服志>主要描写了唐代的流行服饰样式, ...

  5. Hive函数(内置函数(字符串函数,数学函数,日期函数,集合函数,条件函数,聚合函数,表生成函数)和自定义函数(自定义函数创建流程,临时函数,永久函数)))(四)

    Hive函数(内置函数和自定义函数) 一.内置函数 1.字符串函数 (1)ascii (2)base64 (3)concat (4)concat_ws (5)format_number (6)subs ...

  6. c++内置函数实现字符串翻转(reverse,strrev,string 构造函数)

    c++内置函数实现字符串翻转(reverse,strrev,string 构造函数) 在写程序的时候,我们经常需要将字符串进行翻转.c++中内置的函数有不少个可以实现该功能. 1.strrev函数.( ...

  7. 检测java是否连接到SQL server数据库 + SQL server数据库内置账户sa无法登录

    检测java是否连接到SQL server数据库 + SQL server数据库内置账户sa无法登录 SQL 检测java是否连接到SQL server数据库 SQL server数据库内置账户SA登 ...

  8. Python 内置函数之 open (文件操作)

    正常的文件操作都分三步走:打开文件,操作文件,关闭文件. python open() 函数用于打开一个文件,创建一个 file 对象,相关的方法才可以调用它进行读写 语法 文件句柄 = open(文件 ...

  9. 自学python第四课——字符串运算符、字符串内置函数、字符串常用方法总结

    第四课 字符串 单.双.三引号 直接赋值和用 input 赋值: "+"号和"*"号在字符串中的使用 in 和 not in 字符串的格式化 r 保留原格式,即 ...

最新文章

  1. Django项目日志概述
  2. Vue教程1 【Vue核心】
  3. 谷歌参展攻略!AI皮影戏、3D作画、与AI共舞...嗨翻魔都(附视频)
  4. 哈希表(等概率下)平均查找长度(转)
  5. mysql 结构对比工具_Mysql 数据库结构 对比工具
  6. 后门怎么写隐蔽java_用Java写黑软-后门篇
  7. Qt5使用windeployqt后 exe文件还是无法执行 无法定位程序输入点 _ZdaPvj 于动态链接库 libstdc++-6.dll
  8. Python 通过 pip 安装第三方模块成功,导入该模块失败的解决方法
  9. 【黑金原创教程】【TimeQuest】【第二章】TimeQuest模型角色,网表概念,时序报告...
  10. 卷积神经网络(高级篇) Inception Moudel
  11. 验证occ和vtk整合工作的demo
  12. divcss布局模板代码_CSS3布局(前端所必须要掌握)
  13. 使用python将COCO格式的json文件转化为VOC格式的xml文件
  14. Java 统计字母个数
  15. 学习人工智能的头四个月
  16. Netty工作笔记0065---WebSocket长连接开发4
  17. 第2章—装配Bean—自动化装配Bean
  18. 安装libvirt管理套件(C/S架构模式,用户管理kvm虚拟机)
  19. pgadmin4 如何改成中文版
  20. 产品的思维与技术的思维差异

热门文章

  1. 天玑1000 能升级鸿蒙吗,天玑1000+处理器可以用上两三年吗?
  2. 手机销售网站——后台管理
  3. 武汉坚守第五十四天——胖人容易被感染,荷兰分析有数据
  4. 位运算 之(1) 按位与(AND) 操作
  5. 清华大学计算机与科学系张荷花简历,清华大学软件学院研究生导师简介-张荷花...
  6. 100个go语言面试问答合集_golangde_SQL
  7. 仓鼠大厦java下载_仓鼠的生活安卓版下载-仓鼠的生活(Hamster Life)安卓版 3.9.2 - 极光下载站...
  8. 无心剑中文随感《探求真谛》
  9. Spring上下文(ApplicationContext)理解
  10. 仙界修仙 - 最新章节列表