补充说明:
&&&&&&&&&&&&&&&&
instr(字段,'#',1,2)
函数查找【字段】中从第【1】位开始,第【2】个【#】位置。
substr(字段,1,查出的位置-1)
截取你想要的字符串。
&&&&&&&&&&&&&&&&&
select
substr(字段,1,instr(字段,'#',1,2))
from
表名
*****************
测试log:
*****************
[sys@ora10gr1]
sql>select
substr('1234#1214124#124141421#',1,instr('1234#1214124#124141421#','#',1,2)-1)
from
dual
substr('1234
------------
1234#1214124
[sys@ora10gr1]
sql>select
substr('1234#urqosdsdriu#68768#',1,instr('1234#urqosdsdriu#68768#','#',1,2)-1)
from
dual
substr('1234#urq
----------------
1234#urqosdsdriu
---
以上,希望对你有所帮助。
SUBSTRING(str FROMpos)返回字符串str的位置pos起的一个子串
mysql>selectSUBSTRING('Quadratically',5)
->'ratically'
mysql>select SUBSTRING('foobarbar' FROM4)
->'barbar'
INSTR(str,substr)
返回子串substr在字符串str中的第一个出现的位置。这与有2个参数形式的LOCATE()相同,除了参数被颠倒。
mysql>select INSTR('foobarbar', 'bar')
->4
mysql>select INSTR('xbar', 'foobar')
->0
您好,非常荣幸能在此回答您的问题。以下是我对此问题的部分见解,若有错误,欢迎指出。Oracle截取字符串的函数为:substr(字段名,起始位置,字符串长度) 起始位置可从0开始,截取结果和从1开始一样。MySql截取字符串的函数为:substring(字段名,起始位置,字符串长度) 起始位置必须从1开始,0开始不能获取到数据。非常感谢您的耐心观看,如有帮助请采纳,祝生活愉快!谢谢!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)