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_ ...
随机推荐
- hive编程指南--employees表数据定义
hive编程指南中有个employees表,默认的分隔符比較繁杂,编辑起来不太方便(普通编辑器编辑的控制字符^A等被当成字符串处理了,没有起到分隔符的作用). 收集的解决方式例如以下: http:// ...
- C++ Primer 学习笔记_32_STL实践与分析(6) --再谈string类型(下)
STL实践与分析 --再谈string类型(下) 四.string类型的查找操作 string类型提供了6种查找函数,每种函数以不同形式的find命名.这些操作所有返回string::size_typ ...
- LINUX编程学习笔记(十三) 遍历目录的两种方法
1 默认情况下 实际用户和有效用户是一样的 实际用户:执行用户 有效用户:权限用户 getuid() 实际用户 geteuid() 有效用户 chmod u+s 之后 ,其他人执行文件时,实际 ...
- 7.数据本地化CCString,CCArray,CCDictionary,tinyxml2,写入UserDefault.xml文件,操作xml,解析xml
数据本地化 A CCUserDefault 系统会在默认路径cocos2d-x-2.2.3\projects\Hello\proj.win32\Debug.win32下生成一个名为UserDef ...
- 算法起步之A星算法
原文:算法起步之A星算法 用途: 寻找最短路径,优于bfs跟dfs 描述: 基本描述是,在深度优先搜索的基础上,增加了一个启发式算法,在选择节点的过程中,不是盲目选择,而是有目的的选的,F=G+H,f ...
- [开源]C#二维码生成解析工具,可添加自定义Logo (转)
二维码又称 QR Code,QR 全称 Quick Response,是一个近几年来移动设备上超流行的一种编码方式,它比传统的 Bar Code 条形码能存更多的信息,也能表示更多的数据类型:比如:字 ...
- 散文说python半篇——景观三元论与盖茨比的对话
今天, 天气晴朗,风和日丽: 我事实上在说谎-- 爱说谎事实上是我的天性 上个礼拜四我就用景观三元论说了非常多谎话.然后一头大象自己上吊了. 了不起的大象啊,盖茨比也要从坟墓里爬出来了吧, 陈年旧事, ...
- Note for video Machine Learning and Data Mining——Linear Model
Here is the note for lecture three. the linear model Linear model is a basic and important model in ...
- iOS得知1_初体验
UIView:父类的所有控件,所有的UIView它是一个容器.可容纳其他UIView UIController:用于控制UIView,责创建/销毁自己的UIView,显示/隐藏UIView.处理UIV ...
- Eclipse扩展点实践之添加菜单项(ActionSet方式实现)
ActionSet方式比起Command方式,比较直观,但是功能有限. 首先:新建一个项目,在Extension中添加org.eclipse.ui.actionSets的扩展. 然后,new-> ...