knrt.net
当前位置:首页 >> 再PL/SQL中,怎样获取一个字符串的长度 >>

再PL/SQL中,怎样获取一个字符串的长度

pl是什么?用C#很容易的啊用“,”分成一个数组,然后计算数组中每个值的长度,然后用角标标示是第几个“,”符号,第一个就用第一个长度标示,第二个就用第二个长度和它前面所有的长度的和,第三个依次类推就行了.

主要是结合substr()和instr()这两个函数,比如get(#1,61,001,0) 转变变成 get(#1,"61,001",0)按如下:substr('#1,61,001,0',1,instr('#1,61,001,0',',',1,1))||'"'||substr('#1,61,001,0',instr('#1,61,001,0',',',1,1)+1,instr('#1,61,001,0',',',1,3)-1)||'""'||substr('#1,61,001,0',instr('#1,61,001,0',',',1,3))

select SUBSTR('1-4', INSTR('1-4', '-')+1,length('1-4')) from dual; select SUBSTR('1-4', 0, INSTR('1-4', '-') - 1) from dual

select regexp_substr('水库新村332号','[0-9]+' ) from dual;--用正则表达式取出数字select regexp_substr('水库新村332号','[[:digit:]]+') from dual;

substrb(str,1, lengthb(str)-lengthb(substrb(str,instr(str,'A'))))思路:1,先获取查找字符a的位置2,在截取a以后的字符3,判断截取后字符的长度4,总长度-截取后字符长度,获取a以前的长度5,在截取1开始后的制定长度字符

substrb(str,1, lengthb(str)-lengthb(substrb(str,instr(str,'A'))))思路:1,先获取查找字符a的位置2,在截取a以后的字符3,判断截取后字符的长度4,总长度-截取后字符长度,获取a以前的长度5,在截取1开始后的制定长度字符

select substr('字符串',length('字符串')-1,1) from dual或select substr(字段名,length(字段名)-1,1) from 表名

SQL中统计字符串长度的函数是:函数len(string). 比如: select len('abc')输出3 select len('abcde')输出5 字符串函数对二进制数据、字符串和表达式执行不同的运算.此类函数作用于CHAR、VARCHAR、 BINARY

第一个语句是从“1-4”这个字符串中截取右边的字符,即4,instr('1-4','-')是取得字符串“1-4”中“-”的位置,length是取字符串“1-4”的长度.第二个语句以此类推,告诉你一个小窍门,研究这些字符串函数的时候,只要在SQLplus中打进去执行一下,看结果,立马明白了.

select substr('字符串',length('字符串')-1,1) from dual或select substr(字段名,length(字段名)-1,1) from 表名

网站首页 | 网站地图
All rights reserved Powered by www.knrt.net
copyright ©right 2010-2021。
内容来自网络,如有侵犯请联系客服。zhit325@qq.com