设为首页 收藏本站
查看: 442|回复: 0

[经验分享] 数据库基本函数——字符函数(Oracle)

[复制链接]

尚未签到

发表于 2016-8-10 07:31:43 | 显示全部楼层 |阅读模式
  一、字符函数
  1、ASCII(<str>)
  str是字符串,返回str第一个字母的ASCII码,它的逆函数是CHR(),例如:
  SELECT ASCII('A') BIG_A, ASCII('z') BIG_ZFROM emp;
  返回结果:
  BIG_A    BIG_Z
  65          122
  
  2、CHR(<i>)[NCHAR_CS]
  i是一个数字,函数返回十进制表示的字符,例如
  SELECT CHR(65), CHR(122), CHR(223) FROM emp;
  返回结果:
  CHR65    CHR122    CHR223
   A            z               B
  
  3、CONCAT(str1, str2)
  其中str1str2均为字符串,函数将str2连接到str1的后面,如果str1Null,则返回str2;如果str2Null则返回str1;如果str1str2都为Null,则返回Null。它和操作符||返回的结果相同。例如:
  SELECT CONCAT('slobo ', 'Svoboda') username FROM dual;
  返回结果:
  Username
  slobo Svoboda
  
  4、INITCAP(str)
  str为字符串,函数将每个单词的第一个字母大写,其他字母小写返回;单词由空格、控制字符、标点符号限制。例如:
  SELECT INITCAT('veni,vedi,vici') Ceasar FROM dual;
  返回结果:
  Ceasar
  Veni,Vedi,Vici
  
  5、INSTR(str1, [str2, <i>[, j]])
  str1str2均为字符串,ij为整数;函数返回str2str1中第i次出现的位置,搜索从str1的第j个字符开始。当没有发现需要的字符时返回0,如果i为负数,那么搜索将从右到左进行,但是位置的计算还是从左道右,ij的默认值为1。例如:
  SELECT INSTR('Mississippi', 'i', 3, 3) FROM dual;
  返回结果:
  INSTR('MISSISSIPPI', 'I', 3, 3)
  11
  再例如:
  SELECT INSTR('Mississippi', 'i', -2, 3) FROM dual;
  返回结果:
  INSTR('MISSISSIPPI', 'I', -2, 3)
  2
  
  6、INSTRB(str1, [str2, <i>[, j]])
  与INSTR()函数一样,只是其返回的是字节,对于单字节INSTRB()等于INSTR()。
  
  7、LENGTH(str)
  str为字符串,返回str的长度,如果strNull,那么将返回Null值。例如:
  SELECT LENGTH('Ipso Facto') ergo FROM dual;
  返回结果:
  Ergo
  10
  
  8、LENGTHB(str)
  与LENGTH()一样,只是其返回的是字节长度。
  
  9、LOWER(c)
  返回c的小写字符,经常出现在WHERE子串中。例如:
  SELECT LOWER(colorname) FROMitemdetail WHERE LOWER(colorname) LIKE'%white%';
  返回结果:
  COLORNAME
  Winterwhite
  
  10、LPAD(str1, <i>[, str2])
  str1str2均为字符串,i为整数。在str1的左侧用str2字符串补足致长度i,可多次重复,如果i小于str1的长度,那么只返回i长的str1字符串,其他的将被截去。str2的默认值为单空格,参见RPAD()。
  
  11、LTRIM(str1, str2)
  把str1中最左边的字符去掉,使其第一个字符不在str2中;如果没有str2,那么str1就不会改变。例如:
  SELECT LTRIM('Mississippi', 'Mis') FROMdual;
  返回结果:
  LTR
  ppi
  
  12、RPAD(str1, <i>[, str2])
  在str1的右侧用str2字符串补足足致长度i,可多次重复;如果i小于str1的长度,那么只返回i长得str1字符,其他将被截去。str2的默认值为单空格,其他与LPAD()相似。
  
  13、RTRIM(str1, str2)
  把str1中最右边的字符去掉,使其最后一个字符不在str2中;如果没有str2,那么str1就不会改变。与LTRIM()相似。
  
  14、REPLACE(str1[, str2[, str3]])
  str1str2str3均为字符串,函数用str3代替出现在str1中的str2后返回。例如:
  SELECT REPLACE('uptown', 'up', 'down') FROMdual;
  返回结果:
  REPLACE
  downtown
  
  15、SUBSTR(str, <i>[, j])
  str为字符串,i、j为整数,从str的第i位开始返回长度为j的子字符串,如果j为空砸直到串的尾部。
  
  16、SUBSTRB(str, <i>[, j])
  与SUBSTR()大致相同,只是ij是以字节计算。
  
  17、SOUNDEX(str)
  返回与str发音相似的词。
  
  18、TRANSLATE(str1, str2, str3)
  将str1str2中相同的字符以str3代替。
  
  19、TRIM([{{LEADING| TRAILING| BOTH}[ trim_character] | trim_character} FROM] str)
  从字符串str中删除指定的字符trim_character
  LEADING:从字符串的头开始删除。
  TRAILING:从字符串的尾部开始删除。
  BOTH:从字符串的两边删除。

  
  20、UPPER(str)
  返回str的大写,常出现在WHERE子串中。
  

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-255667-1-1.html 上篇帖子: Oracle数据库触发器(Triggers) 下篇帖子: hibernate + spring 调用oracle 存储过程函数
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表