ORACLE函数--字符型函数来源: 发布时间:星期三, 2008年12月17日 浏览:8次 评论:0
型返回值(Character Functions Returning Character Values)
该类返回和输入类型相同类型 返回CHAR类型值长度不超过2000字节;? 返回VCHAR2类型值长度不超过4000字节;? 如果上述应返回长度超出oracle并不会报错而是直接截断至最大可支持长度返回 返回CLOB类型值长度不超过4G;? 对于CLOB类型如果返回值长度超出oracle不会返回任何而是直接抛出 1、LOWER(c) 将指定串内变为小写支持CHAR,VARCHAR2,NCHAR,NVARCHAR2,CLOB,NCLOB类型 例如:SELECT LOWER('WhaT is tHis') FROM DUAL; 2、UPPER(c) 将指定串内变为大写支持CHAR,VARCHAR2,NCHAR,NVARCHAR2,CLOB,NCLOB类型 例如:SELECT UPPER('WhaT is tHis') FROM DUAL; 3、LPAD(c1,n[,c2]) 返回指定长度=n串需要注意有几点: 如果n? 如果n? >c1.length and c2 is null以空格从左向右补充长度至n并返回; 如果n? >c1.length and c2 is not null以指定c2从左向右补充c1长度至n并返回; 例如:SELECT LPAD('WhaT is tHis',5),LPAD('WhaT is tHis',25),LPAD('WhaT is tHis',25,'-') FROM DUAL; 最后大家再猜猜如果n<0结果会如何样 4、RPAD(c1,n[,c2]) 返回指定长度=n串基本和上同不过补充是从右向左方向正好和上相反; 例如:SELECT RPAD('WhaT is tHis',5),RPAD('WhaT is tHis',25),RPAD('WhaT is tHis',25,'-') FROM DUAL; 5、TRIM([[LEADING||TRAILING||BOTH] c2 FROM] c1) 哈哈被俺无敌形容方式搞晕头了吧这个地方还是看图更明了些 看起来很复杂理解起来很简单: 如果没有指定任何参数则oracle去除c1头尾空格? 例如:SELECT TRIM(' WhaT is tHis ') FROM DUAL; 如果指定了c2参数则oracle去掉c1头尾c2(这个建议细致测试有多种区别情形哟)? 例如:SELECT TRIM('W' FROM 'WhaT is tHis w W') FROM DUAL; 如果指定了leading参数则会去掉c1头部c2? 例如:SELECT TRIM(leading 'W' FROM 'WhaT is tHis w W') FROM DUAL; 如果指定了trailing参数则会去掉c1尾部c2? 例如:SELECT TRIM(trailing 'W' FROM 'WhaT is tHis w W') FROM DUAL; 如果指定了both参数则会去掉c1头尾c2(跟不指定有区别吗?没区别!)? 例如:SELECT TRIM(both 'W' FROM 'WhaT is tHis w W') FROM DUAL; 注意:c2长度=1 6、LTRIM(c1[,c2]) 千万表以为和上面那个长像功能也和上面类似本是从串c1左侧截取掉和指定串c2相同并返回如果c2为空则默认截取空格 例如:SELECT LTRIM('WWhhhhhaT is tHis w W','Wh') FROM DUAL; 7、RTRIM(c1,c2)和上同不过方向相反 例如:SELECT RTRIM('WWhhhhhaT is tHis w W','W w') FROM DUAL; 8、REPLACE(c1,c2[,c3]) 将c1串中c2替换为c3如果c3为空则从c1中删除所有c2 例如:SELECT REPLACE('WWhhhhhaT is tHis w W','W','-') FROM DUAL; 9、SOUNDEX(c) 神奇啊该返回串参数语音表示形式对于比较些读音相同但是拼写区别单词非常有用计算语音算法如下: 保留串首字母但删除a、e、h、i、o、w、y? 将下表中数字赋给相对应字母:? 1:b、f、[ft=,,Times]p[/ft 0
相关文章读者评论
发表评论 |