永发信息网

利用SQL SERVER 2008提取字段列中多个中括号里的内容?

答案:2  悬赏:80  手机版
解决时间 2021-02-24 17:49
利用SQL SERVER 2008提取字段列中多个中括号里的内容,如:上海启限公司[862NUM53](2009年04日)[2765NUM5]AASSW。
想要解析出的结果如下:
列一 / 列二
--------------
862 / 53
2765 / 5
请问该如何实现,一定是在SQL2008中。
最佳答案
--你要把一行中的字段两个括号中拆成两列,这个就需要先把这个字段拆成两行。我就不在这做了,用--charindex和substring完成。
--你现在一个字段中有两个括号,每个括号中用NUM隔开两个数字,这样,我把这个字段拆--成四列  分别是 862/53/2765/5,假设你这个字段叫COLUMN
select SUBSTRINg(COLUMN,CHARINDEX('[',COLUMN)+1,CHARINDEX('NUM',COLUMN)-CHARINDEX('[',COLUMN)-1)  as [列1],SUBSTRINg(COLUMN,CHARINDEX('NUM',COLUMN)+3,CHARINDEX(']',COLUMN)-CHARINDEX('NUM',COLUMN)-3)  as [列2],SUBSTRINg(COLUMN,CHARINDEX('[',COLUMN,CHARINDEX('(',COLUMN))+1,CHARINDEX('NUM',COLUMN,CHARINDEX('(',COLUMN))-CHARINDEX('[',COLUMN,CHARINDEX('(',COLUMN))-1)  as [列3],SUBSTRINg(COLUMN,CHARINDEX('NUM',COLUMN,CHARINDEX('(',COLUMN))+3,CHARINDEX(']',COLUMN,CHARINDEX('(',COLUMN))-CHARINDEX('NUM',COLUMN,CHARINDEX('(',COLUMN))-3)  as [列4]
from table
--可能有点问题,你调试下吧
全部回答
sql server 2008 我也是64位,用安装盘装了半天,也没装上,最后用了my sql
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
车坊大桥地址在什么地方,想过去办事
侠盗猎车圣地安列斯怎么回家?家的标志是什么
说普通话的人,如何判定新韵里的【入声】字?
正月初二有谁拜年
银行卡欠费(年费 小额帐户管理)没注销另外
洋较埔怎么去啊,有知道地址的么
三星手机不知道怎么按的变成繁体中文选回
大众新捷达空调加水在哪里
access2010工具菜单的启动命令在哪里
先天性巨结肠最严重的并发症是A.胎粪排出延迟
好心情K歌之王这个地址在什么地方,我要处理
________叫做圆的面积.把圆沿着它的半径r分
坚果u1恢复厂设置会不会降级
您好,我想问下同样养的鹅有一只六个月就开始
猜不透的意思
推荐资讯
怎么计算笔记本液晶屏幕尺寸
为什么保险师app里的产品在官网上查不到
KOINO(建兴),KACON(凯昆) YONGSUNG韩国龙声
山东博网信息技术有限公司怎么样?
【故友是什么意思】但有故友供禄米的但有是什
问下星际争霸1录像replays可以直接看吗不上游
天天快乐的英语怎么写??
保康县黄堡镇张家沟村民委员会地址在哪,我要
宁波移动公司能注销温州的电话卡吗
凯迪拉克与奥迪的选择。
下列含水量的木材,不可以用作承重木结构的是
花开花落终有时 繁华落尽徒笙箫是什么意思
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?