length,lengthb,substr,substrb,instr小用

--字符串的字符长度
select length(‘wm.dfw.士农工商.sda.人马ss.dfw.4.sdf.332.sf.qq.sd‘) from dual;

--字符串的字节长度
select lengthb(‘wm.dfw.士农工商.sda.人马ss.dfw.4.sdf.332.sf.qq.sd‘) from dual;

--按字符长度截取
select substr(‘wm.dfw.士农工商.sda.人马ss.dfw.4.sdf.332.sf.qq.sd‘,1,18) from dual;

--按字节长度截取,如汉字商在第17-19字节,则自动占位补齐,仍然为18字节
select substrb(‘wm.dfw.士农工商.sda.人马ss.dfw.4.sdf.332.sf.qq.sd‘,1,18) from dual;
select lengthB(substrb(‘wm.dfw.士农工商.sda.人马ss.dfw.4.sdf.332.sf.qq.sd‘,1,18)) from dual;

--取字符4,所在的第一个位置
select instr(‘wm.dfw.士农工商.sda.人马ss.dfw.4.sdf.332.sf.qq.sd‘,4) from dual;

--自左至右从第一个字符开始取第三个小数点所在位置
select instr(‘wm.dfw.士农工商.sda.人马ss.dfw.4.sdf.332.sf.qq.sd‘,‘.‘,1,3) from dual;

--自左至右从第8个字符开始取第三个小数点所在位置
select instr(‘wm.dfw.士农工商.sda.人马ss.dfw.4.sdf.332.sf.qq.sd‘,‘.‘,8,3) from dual;

--自右至左从第一个字符开始取第三个小数点所在位置
select instr(‘wm.dfw.士农工商.sda.人马ss.dfw.4.sdf.332.sf.qq.sd‘,‘.‘,-1,3) from dual;
时间: 2024-10-10 16:08:04

length,lengthb,substr,substrb,instr小用的相关文章

substr()和instr()组合截取字符

通过substr和instr这两个函数组合应用就可以截取字符串中想要的字符. substr函数主要用来截取字符串.语法:substr( string, start_position, [ length ] )string:列或者字符串start_position:开始的位置,正数表示从左开始,负数表示从右开始.如,1表示从左边第一个字符开始:-2表示从右侧第2个字符开始.                         注意:无论是正负,都要从开始位置向右数.[ length ] :可写可不写.

2016.7.10 SqlServer语句中类似decode、substr、instr、replace、length等函数的用法

Decode() 对应 case when函数 case CHARINDEX('/',start_point_name) when 0 then start_point_name else substring(start_point_name,1,CHARINDEX('/',start_point_name)-1) end 注意:sqlserver在用case when判断是否为null时,语法不一样 判断null应该用: case when identifier is null then ai

oracle里面的时间转字符串to_char(),字符串转时间to_date(),以及substr和instr的使用。

工作中编写过的一条语句 select * from Bt_Holiday where to_char(Setting_DATE,'YYYY')=Substr('2015-03-00',1,4) AND to_char(Setting_DATE,'MM')=Substr('2015-03-00',6, (instr('2015-03-00','-',1,2))-(instr('2015-03-00','-',1)+1)) Substr('2015-03-00',6, (instr('2015-03

虚拟表dual。字符串函数UPPER,LOWER。&变量。INITCAP,LENGTH,SUBSTR

&自定义变量的用法:

2015.7.24 CAD库中列举五字代码点所属航路及终端区图,左连接的累加

select decode(fb.tupr,null,'仅航路',decode(fc.aw,null,'仅终端区','航路及终端区')) 范围,pt 五字代码点,fb.tupr 终端区图及程序,fc.aw 航路 from ( select  distinct wz pt from ( select wz,tupr,0 from (select f2.code_fix_point wz,min(f1.tu) tupr from ( select sid_id id, substr(upper(de

oracle 截取字符 substr ,检索字符位置 instr

常用函数:substr和instr1.SUBSTR(string,start_position,[length]) 求子字符串,返回字符串解释:string 元字符串start_position 开始位置(从0开始)length 可选项,子字符串的个数 substr("ABCDEFG", 0); --返回:ABCDEFG,截取所有字符 substr("ABCDEFG", 2); --返回:CDEFG,截取从C开始之后所有字符 substr("ABCDEFG

Oracle中substr截取字符串并用INSTR范围匹配字符串位置截取

1:update 表名  set 列名= SUBSTR(列名,INSTR(列名,'匹配字符',1,1)+1) where 条件 like '%*%' 2:select SUBSTR(列名,INSTR(列名,'.',1,1)+1) as d from 表名 t where 条件 like '%-%'; 例:Select INSTR(‘ORC+001‘,‘+‘,1,1) from dual 返回的是"4" 如果该字符串没有匹配字符 返回的是“0”. INSTR:INSTR方法的格式为 INSTR(源

Oracle Length 和 Lengthb 函数说明 .(用来判断记录值里是否有中文内容)

一.官网的说明 http://download.oracle.com/docs/cd/E11882_01/server.112/e26088/functions088.htm#SQLRF00658 Purpose The LENGTH functionsreturn the length of char. LENGTH calculates length usingcharacters as defined by the input character set. --返回以字符为单位的长度. L

Oracle 【to_number】【instr】

需求:对一个包含数字的字符串排序 search后参考了  http://www.cnblogs.com/m-cnblogs/archive/2012/03/30/2425938.html 截屏: (用到了to_number(str,split 1,...)   instr()  replace()  substr()) TO_NUMBER(x [, format], [ nls_language ])  converts x to a NUMBER. x is the string that w