SQL语句如何取出一个字段中值
SQL语句如何取出一个字段中()括号中间的值字段里面的值N条记录ds(dDETddAIL_TYPEd41)rtyhjds(DETddAILsdfs_TYPEd41)sdf...
SQL语句如何取出一个字段中()括号中间的值字段里面的值 N条记录
ds(dDETddAIL_TYPEd41)rt
yhjds(DETddAILsdfs_TYPEd41)sdfsdf
返回结果是
dDETddAIL_TYPEd41
DETddAILsdfs_TYPEd41 展开
ds(dDETddAIL_TYPEd41)rt
yhjds(DETddAILsdfs_TYPEd41)sdfsdf
返回结果是
dDETddAIL_TYPEd41
DETddAILsdfs_TYPEd41 展开
4个回答
展开全部
oracle用substr(原字符串,起始位置,[截取长度])和instr(原字符串,查找字符串,[起始位置],[第n个])函数,[]内的是可选参数
mysql用substring和instr()函数
大概思路是截取原字符串,从(开始,到)结束,
用instr定位(和),用substr截取
比如原字符串在变量str中
以oracle为例:substr(str,instr(str,'('),instr(str,')')-instr(str,'('))
mysql用substring和instr()函数
大概思路是截取原字符串,从(开始,到)结束,
用instr定位(和),用substr截取
比如原字符串在变量str中
以oracle为例:substr(str,instr(str,'('),instr(str,')')-instr(str,'('))
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
DECLARE @table table (
c1 nvarchar(50)
)
INSERT INTO @table (c1) VALUES ('ds(dDETddAIL_TYPEd41)rt')
INSERT INTO @table (c1) VALUES ('yhjds(DETddAILsdfs_TYPEd41)sdfsdf')
SELECT c1 AS [Text],
[Start], [End], ([End] - [Start]) AS [Length],
SUBSTRING(c1, [Start], [End] - [Start]) AS [Result]
FROM (
SELECT c1,
CHARINDEX('(', c1) + 1 AS [Start],
CHARINDEX(')', c1) AS [End]
FROM @table
) AS tab
c1 nvarchar(50)
)
INSERT INTO @table (c1) VALUES ('ds(dDETddAIL_TYPEd41)rt')
INSERT INTO @table (c1) VALUES ('yhjds(DETddAILsdfs_TYPEd41)sdfsdf')
SELECT c1 AS [Text],
[Start], [End], ([End] - [Start]) AS [Length],
SUBSTRING(c1, [Start], [End] - [Start]) AS [Result]
FROM (
SELECT c1,
CHARINDEX('(', c1) + 1 AS [Start],
CHARINDEX(')', c1) AS [End]
FROM @table
) AS tab
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
sqlserver:
SELECT substring(col1,CHARINDEX('(', col1) +1,CHARINDEX(')', col1) -CHARINDEX('(', col1)-1)
FROM table
SELECT substring(col1,CHARINDEX('(', col1) +1,CHARINDEX(')', col1) -CHARINDEX('(', col1)-1)
FROM table
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询