加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > MsSql教程 > 正文

SQLSERVER字符串截取

发布时间:2020-12-12 13:41:22 所属栏目:MsSql教程 来源:网络整理
导读:SQLSERVER字符串截取 ?? 截取字符串A的第一个左边的字符串 select left(A,charindex('/',A)-1) 输出结果:F: ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ ---截取中间的字符串 select? left(stuff(A,1,A),''),stuff(A,''))-1) 输出结

SQLSERVER字符串截取??

截取字符串A的第一个左边的字符串

select left(A,charindex('/',A)-1)
输出结果:F:
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

---截取中间的字符串
select? left(stuff(A,1,A),''),stuff(A,''))-1)
输出结果:photo
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++


---截取最后一个后面的字符串
select? reverse(left(reverse(A),reverse(A))-1))
输出结果:Winter Leaves.jpg

declare @end int --截取的结束位置

declare @www varchar(100) --要处理的字符串

set @www = 'http://www.baidu.com/zhidao/'

set @www = REPLACE(@www,'http://','') --替换掉http://

set @end = PATINDEX('%/%',@www) --得到第一次出现'/'的位置

set @www = SUBSTRING(@www,@end) --截取

select @www

存储过程如下:

IF EXISTS (SELECT name FROM sysobjects

WHERE name = 'gs_MySub' AND type = 'P')

DROP PROCEDURE gs_MySub

GO

create proc gs_MySub

@www varchar(100),

@result varchar(100) output,

@end int = 0

as

set @www = REPLACE(@www,@www) --得到第一次出现'/'的位置

set @result = SUBSTRING(@www,@end) --截取

GO

//测试代码

declare @result varchar(100)

exec gs_MySub 'http://www.baidu.com/zhidao/',@result output

print @result

?

表名:job?
工号 姓名 年龄?
000123 aaa 25?
000124 bbb 26?
000125 ccc 22?

现需将'工号'字段的内容批量改成前面加AD,即结果如AD000123、AD000124、AD000125

.首先你的‘工号’列要扩大容量? alter table job alter column 工号 varchar(20)? 2.UPDATE job SET 工号='AD'+工号

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读