ORACLE单字符函数的函数
1、 ASCII(C)
说明:返回C的首字符在ASCII码中相应的十进制
举例:
SQL>SELECT ASCII('A') A,ASCII('a') B,ASCII('0') C,ASCII(' ') D FROM DUAL;
A B
C D
-------------------- ---------- ----------
65 97
48 32
2、 CHR(N)
说明:返回十进制ASCII码N相应的字符
举例:
SQL>SELECT CHR(65) A,CHR(97) B,CHR(48) C,CHR(32) D FROM DUAL;
A B CD
- - --
A a 0
3、 CONCAT(C1,C2)
说明:返回将C2加入到C1后面而形成的字符串。假设C1为NULL。那么返回C2。假设C2为NULL,那么返回C1。假设C1和C2都为NULL,那么返回NULL
举例:
SQL>SELECT CONCAT('010-','8888') A,CONCAT(NULL,'8888') B,CONCAT('010-',NULL)C,CONCAT(NULL,NULL) D FROM DUAL;
A B C D
------------ ---- -
010-88888888 010-
4、 INITCAP(C)
说明:返回C的每一个首字符都大写、其它字符都小写的字符串。
单词之间以空格,控制字符和标点符号分界
举例:
SQL>SELECT INITCAP('you are') A FROM DUAL;
A
-------
YouAre
5、 INSTR(C1,C2[,N[,M]])
说明:在C1中从N開始搜索C2第M次出现的位置,并返回该位置数字。假设N是负数。则搜索从右向左进行,但位置数字仍然从左向右计算。N和M默认都是1
举例:
SQL>SELECT INSTR('aabbccddee','cc') A,INSTR('aabbccddee','cc',5)B,INSTR('aabbccddeecc','cc',1,2) C,INSTR('aabbccddee','cc',-6) D FROM DUAL;
A B
C D
-------------------- ---------- ----------
5 5
11 5
6、 LENGTH(C)
说明:返回C的长度。包含全部的后缀空格;假设C是空字符串或者NULL,则返回NULL
举例:
SQL> SELECT LENGTH('aabbccdd') A,LENGTH('') B,LENGTH(NULL) C FROM DUAL;
A B C
---------- ---------- ----------
8
7、 LOWER(C)
说明:返回将C所有字符都小写之后的字符串
举例:
SQL>SELECT LOWER('AaBbCcDd') A FROM DUAL;
A
--------
aabbccdd
8、 LPAD(C1,N[,C2])
说明:在C1的左边填充C2,直到字符串的总长度达到N。C2的默认值为空格。假设C1的长度大于N,则返回C1左边的N个字符
举例:
SQL>SELECT LPAD('aabbcc',8) A,LPAD('aabbcc',4) B,LPAD('aabbcc',8,'0') C FROM DUAL;
A B C
------------ --------
aabbcc aabb 00aabbcc
9、 LTRIM(C1[,C2])
说明:去掉C1左边所包括的C2中的不论什么字符。当遇到不是C2中的字符时结束,然后返回剩余的字符串。
C2默觉得空格
举例:
SQL>SELECT LTRIM(' aabb ') A,LTRIM('00aabb00','0') B FROM DUAL;
A B
------------
aabb aabb00
10、 NANVL(X,value)
说明:该函数仅仅对BINARY_FLOAT和BINARY_DOUBLE起作用。
假设X匹配NaN(即非数字),就返回value。否则返回X
举例(PL/SQL中无法运行,必须在SQLPLUS里运行):
SQL>CREATETABLE
NANVL_demo(dec_numNUMBER(10,2),
bin_doubleBINARY_DOUBLE, bin_floatBINARY_FLOAT);
表已创建。
SQL>INSERTINTO
NANVL_demoVALUES(0,'NaN','NaN');
已创建1行。
SQL>SELECT*FROM
NANVL_demo;
DEC_NUM BIN_DOUBLE BIN_FLOAT
---------- ---------- ----------
0 Nan Nan
SQL>SELECT
bin_float,NANVL(bin_float,0)FROM
NANVL_demo;
BIN_FLOATNANVL(BIN_FLOAT,0)
---------- ------------------
Nan 0
11、 NVL(X,value)
说明:假设X为空。就返回value,否则返回X
举例:
SQL>SELECT NVL('','aabb') A,NVL(NULL,'aabb') B,NVL('aa','aabb') C FROM DUAL;
A B C
-------- --
aabbaabb aa
12、 NVL2(X,value1,value2)
说明:假设X为空,就返回value1。否则返回value2
举例:
SQL>SELECT NVL2('','aabb','ccdd') A,NVL2(NULL,'aabb','ccdd')B,NVL2('aa','aabb','ccdd') C FROM DUAL;
A B C
-------- ----
ccddccdd aabb
13、 REPLACE(C1,C2[,C3])
说明:把C1中出现的C2都置换成C3,然后返回剩余的字符串。
C3默觉得NULL。
假设C3为NULL,那么全部出现C2的地方的字符都被删除。假设C2为NULL,则将返回C1;假设C1为NULL,则将返回NULL
举例:
SQL>SELECT REPLACE('aabbccaabb','aa','00') A,REPLACE('aabbccaabb','aa')B,REPLACE('aabbccaabb',NULL) C FROM DUAL;
A B C
---------------- ----------
00bbcc00bbbbccbb aabbccaabb
14、 RPAD(C1,N[,C2])
说明:在C1的右边填充C2,直到字符串的总长度到达N。C2的默认值为空格。
N是返回的字节长度的字符串。假设这个数量比原字符串的字节长度要短,RPAD函数将会把字符串截取成从左到右的N个字符
举例:
SQL>SELECT RPAD('aabbcc',8) A,RPAD('aabbcc',4) B,RPAD('aabbcc',8,'0') C FROM DUAL;
A B C
------------ --------
aabbcc aabb aabbcc00
15、 RTRIM(C1[,C2])
说明:去掉C1右边所包括的C2中的不论什么字符,当遇到不是C2中的字符时结束,然后返回剩余的字符串。C2默觉得空格
举例:
SQL>SELECT RTRIM(' aabb ') A,RTRIM('00aabb00','0') B FROM DUAL;
A B
------------
aabb 00aabb
16、 SUBSTR(C,M[,N])
说明:返回C的子串,当中M是子串開始的位置,N是子串的长度。假设M为0,则从C的首字符開始:假设M是负数,则从C的结尾的指定位置開始
举例:
SQL>SELECT SUBSTR('aabbccdd',3) A,SUBSTR('aabbccdd',3,2) B,SUBSTR('aabbccdd',-3,2)C FROM DUAL;
A B C
-------- --
bbccddbb cd
17、 TRANSLATE(string,from_str,to_str)
说明:返回将(全部出现的)from_str中的每一个字符替换为to_str中的对应字符以后的string。
TRANSLATE是
REPLACE所提供的功能的一个超集。假设 from_str比 to_str长。那么在
from_str中而不在 to_str中的额外字符将从 string中被删除。由于它们没有对应的替换字符。to_str不能为空。
Oracle将空字符串解释为
NULL,而且假设TRANSLATE中的不论什么參数为NULL,那么结果也是
NULL。
举例:
SQL>select TRANSLATE('aabbcc','aabb','0011') A,TRANSLATE('abcbbaadef','ba','#@')B,TRANSLATE('22AABBCC22','0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ','0123456789')
Cfrom dual;
A B C
---------------- ----
0011cc@#c##@@def 2222
18、 TRIM([C1]
C2 FROM C3)
说明:当中,C1是保留宇,能够取例如以下字符串:LEADING、TRAILING和BOTH。C1必须和FROM一起使用。
从C3字符串的C1处開始。删除C2字符,然后返回剩余的C3字符串。C1默觉得BOTH。C2默觉得空格。假设C1。C2。C3中有不论什么一个为NULL,则返回NULL
举例:
SQL>SELECT TRIM(' aabb ') A,TRIM(LEADING '0' FROM '00aabb00')B,TRIM(TRAILING '0' FROM '00aabb00') C,TRIM(BOTH '0' FROM '00aabb00')
D FROMDUAL;
A B C D
---------- ------ ----
aabbaabb00 00aabb aabb
19、 UPPER(C)
说明:返回将C所有字符都大写之后的字符串
举例:
SQL>SELECT UPPER('aabbccdd') A FROM DUAL;
A
--------
AABBCCDD
ORACLE单字符函数的函数的更多相关文章
- ORACLE 常用字符函数
ORACLE 常用字符函数1 ASCII(arg1)返回参数arg1的十进制数字表示.如果数据库设置为ASCII,则采用的是ASCII码字符.如果设置为EBCDIC,则采用的是EBCDIC字符 sel ...
- 基础 - 字符读取函数scanf、getchar、gets、cin(清空缓存区解决单字符回车问题)
0x01 scanf.getchar.cin读取单字符: 如下: //scanf读取字符 回车问题 void Sub_1_1() { char v1,v2; scanf("%c", ...
- ORACLE常用数值函数、转换函数、字符串函数
本文更多将会介绍三思在日常中经常会用到的,或者虽然很少用到,但是感觉挺有意思的一些函数.分二类介绍,分别是: 著名函数篇 -经常用到的函数 非著名函数篇-即虽然很少用到,但某些情况下却很实用 注:N表 ...
- 四、oracle基本sql语句和函数详解
一.oracle常用数据类型 一. 数据定义语言(ddl) 数据定义语言ddl(data definition language)用于改变数据库结构,包括创建.更改和删除数据库对象. 用于操纵表结构 ...
- MySQL存储过程中的3种循环,存储过程的基本语法,ORACLE与MYSQL的存储过程/函数的使用区别,退出存储过程方法
在MySQL存储过程的语句中有三个标准的循环方式:WHILE循环,LOOP循环以及REPEAT循环.还有一种非标准的循环方式:GOTO,不过这种循环方式最好别用,很容易引起程序的混乱,在这里就不错具体 ...
- .Net程序员学用Oracle系列(9):系统函数(上)
<.Net程序员学用Oracle系列:导航目录> 本文大纲 1.字符函数 1.1.字符函数简介 1.2.语法说明及案例 2.数字函数 2.1.数字函数简介 2.2.语法说明及案例 3.日期 ...
- .Net程序员学用Oracle系列(10):系统函数(下)
<.Net程序员学用Oracle系列:导航目录> 本文大纲 1.转换函数 1.1.TO_CHAR 1.2.TO_NUMBER 1.3.TO_DATE 1.4.CAST 2.近似值函数 2. ...
- .Net程序员学用Oracle系列(10):系统函数(中)
1.四大转换函数 1.1.TO_CHAR 1.2.TO_NUMBER 1.3.TO_DATE 1.4.CAST 2.两大近似值函数 2.1.ROUND 2.2.TRUNC 3.正则函数 3.1.正则函 ...
- Oracle date timestamp 毫秒 - 时间函数总结(转)
原文地址:Oracle date timestamp 毫秒 - 时间函数总结 yyyy-mm-dd hh24:mi:ss.ff 年-月-日 时:分:秒.毫秒 --上一月,上一年select add_ ...
随机推荐
- sharepoint 2010 显示和隐藏Ribbon区域条
在sharepoint 2010的页面中,我们在页面的最上方,有一条深灰色的Ribbon工具栏,如下图,这里可以通过下面的脚本,做一些脚本,来控制它的隐藏和显示. 最后把这些脚本,放在v4.maste ...
- delphi 回调函数
program Project2; {$APPTYPE CONSOLE} uses SysUtils; type //定义一个对象事件方法 TCallbackFunc = function (i: I ...
- 开发自己PHP MVC框架(一)
本教程翻译自John Squibb 的Build a PHP MVC Framework in an Hour,但有所改动,原文地址:http://johnsquibb.com/tutorials 这 ...
- [Cocos2d-x]Android的android.mk文件通用版本
原文地址: http://blog.ready4go.com/blog/2013/10/12/update-android-dot-mk-with-local-src-files-and-local- ...
- 基于DSP的疲劳驾驶检测系统的研究
原地址:http://www.chinaaet.com/article/index.aspx?id=114534 关键词:疲劳检测DSP亮瞳效应PERCLOS 摘 要: 针对汽车驾驶员疲劳驾驶检测的 ...
- Caché Monitor 2.03发布,Caché的SQL开发工具 - 开源中国社区
Caché Monitor 2.03发布,Caché的SQL开发工具 - 开源中国社区 Caché Monitor 2.03发布,Caché的SQL开发工具
- Oschat IM 开源即时通讯项目介绍 - FengJ的个人页面 - 开源中国社区
Oschat IM 开源即时通讯项目介绍 - FengJ的个人页面 - 开源中国社区 Oschat IM 开源即时通讯项目介绍 255人收藏此文章, 我要收藏 发表于5天前(2013-08-28 ...
- vijos P1352 最大获利(最小割)
请不要随便指点别人该怎么做.每一个人的人生都应该自己掌握.你给不了别人一切.你也不懂别人的忧伤. 微笑不代表快乐.哭泣不一定悲伤 不努力怎么让关心你的人幸福.不努力怎么让看不起你的人绝望. 我用生命在 ...
- 在 window7 window8下公布webService注意问题
李石磊 学习日记 错误形如: 解决方式: 1.将服务公布,在IIS下创建虚拟文件夹 2.为上面创建的虚拟文件夹创建单独的应用程序,方法是右击虚拟文件夹.点击"加入应用程序...", ...
- js快速分享代码
这是一款简单易用的文章分享工具,您只需将下面的html代码拷贝到模板中就可以实现文章快速分享功能.如果您想分享你的博客.个人网站或者企业网站等等,下面是两款不错的分享工具,值得拥有! 1. <d ...