oracle 中 substr函数的问题最近在别人写的一段脚本中发现这么一句话substr(DETAIL_TYPE,4,1)='6'请问、这儿的'6'是什么意思?我发现它截取后的值是6位数但是,substr函数后面的参数不是长度吗?他这儿的参数是1,为什么截取出来是6位数?='6'又是神马意思?小弟刚学oracle、老鸟别喷问题就在于,他截取出来的值不是 ‘6’,比如:字符串1111053,他截完之后是111105.原本脚本里写的就是substr(DETAIL_TYPE,4,1),不是substr(DETAIL_TYPE,1,6) 我现在就想知道,他后面的='6'、到底是判断字符串截取4位后的一位是数值6还是长度6?

问题描述:

oracle 中 substr函数的问题
最近在别人写的一段脚本中发现这么一句话
substr(DETAIL_TYPE,4,1)='6'
请问、这儿的'6'是什么意思?我发现它截取后的值是6位数
但是,substr函数后面的参数不是长度吗?他这儿的参数是1,为什么截取出来是6位数?='6'又是神马意思?
小弟刚学oracle、老鸟别喷
问题就在于,他截取出来的值不是 ‘6’,比如:字符串1111053,他截完之后是111105.
原本脚本里写的就是substr(DETAIL_TYPE,4,1),不是substr(DETAIL_TYPE,1,6)
我现在就想知道,他后面的='6'、到底是判断字符串截取4位后的一位是数值6还是长度6?

substr(DETAIL_TYPE,4,1)='6'应该是个判断截取的这个字符串的第四个字符是否等于'6' 的如果是问题补充的那样,应该是substr(DETAIL_TYPE,1,6) 当DETAIL_TYPE 的值为1111053 时,substr(DETAIL_TYPE,1,6) = 111105 ...