Oracle中字符操作函数
来源:互联网 发布:番茄表单怎么导出数据 编辑:程序博客网 时间:2024/06/07 18:09
Table 2.1. Character Function Summary
1、INSTR(c1, c2[,i[,j]])其中c1,c2是字符串,i和j是可选的,这个函数返回c2在c1中从i开始数,第j次出现的位置,例如:
SELECT data_value, INSTR(data_value,'i',4,1) instr_exampleFROM sample_data;DATA_VALUE INSTR_EXAMPLE ]]Comment-------------------- ------------- ---------------------------------------------THE three muskETeers 0 在该字符串中没有"i"ali and*41*thieves 14 由于i是从第四个位置开始数,所以处在第三个位置的i 也就被忽略了,14位置出现了i,所以返回该位置mississippi 5 处在2的i被忽略了,返回5位置的imister INDIA 0 大写I并不等同于小写的i
2、LPAD(c1, i [,c2]),c1和c2是字符串,i是整数,这个函数的作用是将c1扩展到i个长度,如果c1长度不够,则在c1的左边用c2填充,如果c1的长度大于i,则在c1右边截掉,以满足i长度。如果c2不写,默认是空格。
SELECT LPAD(last_name,10) lpad_lname, LPAD(salary,8,'*') lpad_salaryFROM employeesWHERE last_name like 'J%';
LPAD_LNAME LPAD_SAL---------- -------- Johnson ****6200 Jones ****2800
SELECT LTRIM('Mississippi','Mis') test1
,LTRIM('Rpadded ') test2
,LTRIM(' Lpadded') test3
,LTRIM(' Lpadded', 'Z') test4
FROM dual;TES TEST2 TEST3 TEST4
--- ----------------- ------- ------------
ppi Rpadded Lpadded Lpadded
4、REPLACE(c1, c2 [,c3])该函数的作用是讲c1中的所有c2用c3替换,如果c3是NULL,也就是说c3不存在,这将去掉c1中的所有c2,如果c2为NULL,则原封不动的返回c1,如果c1是NULL,则返回NULL。
5、SOUNDEX(c1)这个函数返回跟c1发音相似的字符串例如
SELECT first_name, last_name
FROM employees
WHERE SOUNDEX(first_name) = SOUNDEX('Stevan');
FIRST_NAME LAST_NAME
-------------------- -------------------------
Steven King
StevenMarkle
Stephen Stiles
6、SUBSTR(c1, x [, y])其中c1是字符串,x和y是数字,这个函数的功能是返回c1中从x开始数,y个字符串,如果x是负数,顺序就从右往左数,如果y没有,那就到结尾。
SELECT SUBSTR('The Three Musketeers',1,3) Part1 ,SUBSTR('The Three Musketeers',5,5) Part2
,SUBSTR('The Three Musketeers',11) Part3 ,SUBSTR('The Three Musketeers',-5) Part4FROM dual;PAR PART2 PART3 PART4--- ----- ---------- -----The Three Musketeers teers7、TRANSLATE(c1, c2, c3)其中c1、c2、c3都是字符串,如果其中要是有一个为NULL,则返回NULL,这个函数的作用是将c1中的所有c2替换为c3,如果c2的长度小于c3,则在c3中未匹配的部分将在c1中被忽略,若果c2的长度大于c3,则在c2中未匹配的部分将在c1中被忽略掉。
The following example substitutes * for a, # for e, and $ for i, and it removes o and u from the last_namecolumn:
SELECT last_name, TRANSLATE(last_name, 'aeiou', '*#$') no_vowelFROM employeesWHERE last_name like 'S%';LAST_NAME NO_VOWEL------------------------- --------------Sarchand S*rch*ndSciarra Sc$*rr*Seo S#Smith Sm$thSullivan Sll$v*nSully Slly
Here is another example, where the case is reversed; uppercase letters are converted to lowercase, and lowercase letters are converted to uppercase:
SELECT data_value, TRANSLATE(data_value,'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ','ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz')FROM sample_data;DATA_VALUE TRANSLATE(DATA_VALUE-------------------- --------------------THE three muskETeers the THREE MUSKetEERSali and*41*thieves ALI AND*41*THIEVESmississippi MISSISSIPPImister INDIA MISTER india
- Oracle中字符操作函数
- Oracle中字符操作函数实例
- Oracle使用字符操作函数
- oracle中常用的字符函数
- oracle中粘贴字符函数的使用
- Oracle之字符操作函数(认证考试指南)
- oracle字符窜操作
- oracle基本操作-字符
- oracle中to_char函数操作时间对象
- Oracle字符函数
- ORACLE 常用字符函数
- oracle(字符函数)
- oracle 字符函数
- Oracle字符函数
- oracle(字符函数)
- oracle 字符处理函数
- Oracle字符函数
- Oracle 字符函数
- JS将时间戳转换成日期格式
- Generative model 和 Discriminative model的区别
- 如何关闭dell inspiron n4010的内置麦克
- [每日一题] 11gOCP 1z0-053 :2013-10-11 Flashback Data Archive属性.........................43
- Java 读取Properties文件时应注意的路径问题
- Oracle中字符操作函数
- php不重新编译安装扩展模块
- UVA - 10006 Carmichael Numbers
- 华为笔试
- POJ 3177 Redundant Paths(边双连通分量,3级)
- Hibernate的分页(基于数据库中分页)MySQL
- 关于序列容器的批量删除erase函数
- 360笔试总结
- 使用J2SE API读取Properties文件的六种方法