在oracle数据库中截取一个表名下的几个字段

在oracle数据库中截取一个表名下的几个字段,第1张

你的运气挺好,我发现所有数据的格式都是统一的,而且patid是第一个p的出现点,后面的分号都是第七个分号,syxh是第一个s的出现点,后面的分号是第九个,这样就很容易判断了。

举例,截取patid后面的数字

(1)定位 instr(R_DY_TEXT9,'p') 当然写成 instr(R_DY_TEXT9,'patid')也可以 ,二者是一样的

(2)定位第七个分号instr(R_DY_TEXT9,';',1,7)(判断第七个分号的位置,可能我数错了,这个你要自己好好看看)

(3)instr(R_DY_TEXT9,'patid')+6 这个是数组开头的位置,‘patid=’一共是六位,所以要加6

那么substr的截取长度就是instr(R_DY_TEXT9,';',1,7)-instr(R_DY_TEXT9,'patid')-6

合在一起就是(我写的没有试验过,可能需要一些微调(比如分号个数不对,截取开始位置不对,截取长度不对等等),具体的你可以找一条数据来测试一下,然后改变后面的参数就可以了)

substr(R_DY_TEXT9,instr(R_DY_TEXT9,'patid')+6 ,instr(R_DY_TEXT9,';',1,7)-instr(R_DY_TEXT9,'patid')-6)

翻译过来就是在R_DY_TEXT9字段中,从instr(R_DY_TEXT9,'patid')+6 位开始,截取长度为instr(R_DY_TEXT9,';',1,7)-instr(R_DY_TEXT9,'patid')-6的字符串

后面截取syxh也是一样的

substr(R_DY_TEXT9,instr(R_DY_TEXT9,'syxh')+5 ,instr(R_DY_TEXT9,';',1,9)-instr(R_DY_TEXT9,'syxh')-5)

二者截取出来了,就能判断了。

楼上的做法可以实现,不过呢,效率不高

不知道你现在绑定的是数据库里面的列还是 实体类的属性

如果是列的话,那就在数据库读取的时候加上一列,读取截取后的数据,然后绑定

如果是属性的话,那加一个属性,只是GET ,取的是截取的数据,然后绑定

这样效率会高一些,能明白吗?

--方法一replace函数去掉引号就是没有引号字符串:

select replace(zh,'''','') from 表

--如果真要截取的话也是可以的 先left去掉最后一个引号,然后stuff去掉第一个引号即可

select stuff(left(zh,len(zh)-1),1,1,'') from 表

如有问题可以追问,我当及时回答。

希望能帮到你!

1、将新建好的表aaaa,填充需要查询的数据以"_"或者","为分隔符的两条数据。

2、先挑ID为1的数据进行截取查询演示。

3、如果已知截取字符的长度和特殊字符位置,就可以用substring()函数来从字符串的开始位置,截取到特殊字符出现的位置。

4、使用charindex()函数来返回特殊字符出现的位置,查询结果及语句。

5、使用LEFT()函数和charindex()函数来从字符最左边开始到特殊字符出现的位置。

6、第一个参数表示被截取的字符串,第二个参数表示要在第一个参数中开始截取的位置,第三个参数表示要截取的长度。

这个当然没问题了。

读取时,读取方式可以按照1个字符,也可以按照预先定义好的结构体(可以是地震数据结构),

然后可以用for循环,定量的读取n个字符或结构体。

也可以使用函数如fseek定位函数,具体参见>

举几个例子给你看就明白了:

假设你的数字放在A1单元格

1,取左边6个数字,在B1输入=left(A1,6)即可

2,取右边5个数字,在B1输入=right(A1,5)即可

3,取中间3个数字,在B1输入=mid(A1,4,3)即可,其中公式中的"4"是指从第几位开始取

这样,如果你的数字全部在A列,则拖选复制B1到整个B列就实现批量修改了

以上就是关于在oracle数据库中截取一个表名下的几个字段全部的内容,包括:在oracle数据库中截取一个表名下的几个字段、asp.net怎么截取数据的一部分、请问SQL 2008如何截取字符串中间段内容等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/10173947.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-06
下一篇 2023-05-06

发表评论

登录后才能评论

评论列表(0条)

保存