sql 语句 截取2个字符之间内容

lsxf1988 2011-10-28 08:57:24
我想截取 这个字符串 '某某[12345]' [] 这两个字符之间的5个数字,请问SQL 语句 怎么写??
...全文
740 3 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
jyh070207 2011-10-28
  • 打赏
  • 举报
回复

--前提,必须确保[]成对出现.
declare @s varchar(20)
declare @i int
declare @j int
declare @s1 varchar(20)
set @s = '某某[12345]'
set @i = charindex('[',@s)
set @j = charindex(']',@s,@i )
select @s1 = substring(@s,@i+1,@j- @i-1)
print @s1
昵称被占用了 2011-10-28
  • 打赏
  • 举报
回复
declare @s varchar(20) = '某某[12345]';

select left (STUFF(@s,1,charindex('[',@s),''),CHARINDEX(']',STUFF(@s,1,charindex('[',@s),''))-1)
--小F-- 2011-10-28
  • 打赏
  • 举报
回复
declare @s varchar(100)
set @s='某某[12345]'

select SUBSTRING(@s,charindex('[',@s)+1,CHARINDEX(']',@s)-charindex('[',@s)-1)

/*----------------------------------------------------------------------------------------------------
12345

(1 行受影响)
*/

34,838

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
  • 基础类社区
  • 二月十六
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧