ms sql中, 如何 查询小括号中间的字符串

MSSQL中,如何查询小括号中间的字符串,如果没有小括号,或者小括号不完整,就显示0,比如:aaa23_jinij(3452)nienj(234inijJiu23)最终显... MS SQL中, 如何查询小括号中间的字符串,如果没有小括号,或者小括号不完整,就显示0,比如:
aaa23_jin ij(3452)
nienj(234
inijJiu23)

最终显示的结果是:
3452
0
0
展开
 我来答
shutao917
2014-10-21 · TA获得超过1213个赞
知道大有可为答主
回答量:2199
采纳率:0%
帮助的人:3127万
展开全部
select case when 列 like '%(%)%' then substring(列,charindex('(',列)+1,charindex(')',列)-charindex('(',列)-1) else '0' end
from 表
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
一颗程序猿o_0
2014-10-21 · TA获得超过6298个赞
知道大有可为答主
回答量:5403
采纳率:77%
帮助的人:1354万
展开全部
要写一个查询语句还是写一个SQL代码块?
追问
都可以,最好是查询语句
追答
SELECT CASE WHEN(Charindex('(',@data,1)>0 AND Charindex('(',@data,1)< Charindex(')',@data,1)) THEN Substring(@data,Charindex('(',@data,1)+1,Charindex(')',@data,1)-Charindex('(',@data,1)-1) ELSE '0' END

@data是个pl/sql变量,可以替换成某个列,然后后面加上 FROM xxx 就行了
像这种最好还是写一个function,比如func_MyData,然后直接:
SELECT func_MyData(列或者常量或者变量)
FROM 表名
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式