SQL Server中截取字符串常用函数
截取字符串中的最后一个斜杠后的所有字符:
SELECT A.PIC_URL,
RIGHT(A.PIC_URL,(CHARINDEX('/',REVERSE(A.PIC_URL))-1))
FROM DBO.TXT_PIC A;
SQL Server 中截取字符串常用的函数:
1.LEFT ( character_expression , integer_expression )
函数说明:LEFT ( '源字符串' , '要截取最左边的字符数' )
返回从字符串左边开始指定个数的字符
select LEFT('SQL_Server_2008',4 );
返回结果:SQL_
2.RIGHT ( character_expression , integer_expression )
函数说明:RIGHT ( '源字符串' , '要截取最右边的字符数' )
返回字符串中从右边开始指定个数的 integer_expression 字符
select RIGHT('SQL_Server_2008',4 );
返回结果:2008
3.SUBSTRING ( character_expression , start , length )
函数说明:SUBSTRING ( '源字符串' , '截取起始位置(含该位置上的字符)' , '截取长度' )
返回字符、binary、text 或 image 表达式的一部分
select SUBSTRING('SQL_Server_2008',5 ,6);
返回结果:Server
sql server中截取字符串的常用函数
我们如果要在sql server中,使用截取字符串的方法要怎样使用呢?
sql server提供了3个常用截取字符串方法,LEFT()、RIGHT()、SUBSTRING()
复制代码
/****** Sql Server中截取字符串的常用方法 ******/
--1、LEFT()方法---
--函数说明---
--1)语法:LEFT(character,integer)
--2)介绍:参数1:要截取的字符串,参数2:截取字符个数
--3)使用:
--返回从字符串左边开始指定个数的字符--
select LEFT('SqlServer_2008',3)
--4)返回:Sql
--1、RIGHT()方法---
-- right()函数说明---
--1)语法:RIGHT(character,integer)
--2)介绍:参数1:要截取的字符串,参数2:截取字符个数
--3)使用:
--返回从字符串右边开始指定个数的字符--
select LEFT('SqlServer_2008',4)
--4)返回:2008
--1、SUBSTRING()方法---
-- substring()函数说明---
--1)语法:SUBSTRING(character,start,length)
--2)介绍:参数1:要截取的字符串,参数2:开始截取的下标,参数3:截取的字符长度
--3)使用:
--返回从字符串中间的字符--
select SUBSTRING('SqlServer_2008',4,6)
--4)返回:Server
复制代码
实例如下:
复制代码
--截取字符串左边3个字符--
select LEFT('Welcome to China!',7) as 结果1
--截取字符串右边4个字符--
select RIGHT('Welcome to China!',6) as 结果2
--截取字符串中间6个字符(第二个从哪个字符下标开始)
select SUBSTRING('Welcome to China!',9,2) as 结果3
实例结果:
实例结果:
SQL Server中判断字符串出现的位置及字符串截取
首先建一张测试表:
create table teststring(name nvarchar(100));
insert into teststring
values
('张三,李四,王五,马六,萧十一,皇宫');
1.判断字符串中某字符(字符串)出现的次数,第一次出现的位置最后一次出现的位置:
查看’,’出现的次数
select LEN(name)-LEN(REPLACE(name,',','')) from teststring;
查看’,’第一次出现的位置:
select CHARINDEX(',',name) from teststring;
查看’,’最后一次出现的位置:
select len(name)-(CHARINDEX(',',REVERSE(name))-1) from teststring;
2.取出以’,’分隔开的字符(串),这个例子中就是’张三’、’李四’等
这是有规律的,首先应该想到有没有特定的系统函数实现,好像没有,其次就应该想到循环了。
当我把’张三’取出后,怎样把’张三,’去掉呢?
取’张三’不难,
select SUBSTRING(name,1,CHARINDEX(',',name)-1) from teststring;
如何把’张三,’去掉呢?开始我也不知道,baidu、google啊,关键字sql、split吧,总之我也是搜的
select STUFF(name,1,CHARINDEX(',',name),'') from teststring;
好像用replace也能实现
select REPLACE(name,substring(name,1,CHARINDEX(',',name)),'') from teststring;
那现在就差循环了,我很少写存储过程或函数的,语法都不记得,用的时候现查(经常用就记得了),我都写匿名的存储过程,哈哈
create table teststring2(name nvarchar(100));
declare @name nvarchar(100);
select @name= name from teststring;
while(CHARINDEX(',',@name)<>0)
begin
insert into teststring2 select SUBSTRING(@name,1,CHARINDEX(',',@name)-1);
set @name=STUFF(@name,1,CHARINDEX(',',@name),'');
set @i=@i+1;
end
insert into teststring2
select @name
select * from teststring2就可以看到了。
这只是表中只有一个字段的,如果多的话,用表变量应该就可以了。
表变量我也不会,之前用过一次,用过就忘记了,偶尔用一次!知道有这个东西就好了,至少遇到问题思考时能想到这东西。
以上都是基于我最近做公司考勤时候用的,大概就是php的网页,姓名文本框里需要输入用户姓名,但是一次输入一个,得添加多次,如果我把后台数据库姓名这字段设置大些,一次就可以输入多个姓名,但姓名与姓名之间用逗号隔开,我就可以在数据库里处理了。
小麦苗课程
小麦苗课堂开课啦,如下是现有的课程,欢迎咨询小麦苗:
课程名称
课时
上课时间(可根据情况调整)
价格
OCP(从入门到专家)
每年1期,35课时左右/期
每周一、周三、周四、周六
20:00-22:00
1588
OCM认证
每年N期,9课时/期
每周二、周五
20:00-22:00
22888
高可用课程(rac+dg+ogg)
每年1期,20课时左右/期
每周一、周三、周四、周六
20:00-22:00
1888
Oracle初级入门
每年1期,15课时左右/期
每周一、周三、周四、周六
20:00-22:00
800
Oracle健康检查脚本
可微信或微店购买。
88
Oracle数据库技能直通车
包含如下3个课程:
①《11g OCP网络课程培训》(面向零基础) 价值1600元
②《11g OCM网络班课程培训》(Oracle技能合集)价值10000+元
③《RAC + DG + OGG 高可用网络班课程》 价值2000元
以上3个课程全部打包只要5888,只要5888所有课程带回家,终身指导!所有课程都是在线讲课,不是播放视频,课件全部赠送!
注意:以上OCP和OCM课程只包括培训课程,不包括考试费用。
5888
注意:
1、每次上课前30分钟答疑。
2、OCM实时答疑,提供和考试一样的练习模拟环境,只要按照老师讲的方式来练习,可以保证100%通过。
3、授课方式:YY语音网络直播讲课(非视频) + QQ互动答疑 + 视频复习。其中,OCM在上海开设现场班。
4、OCP课时可以根据大家学习情况进行增加或缩减。
5、以上所有课程均可循环听课。
6、12c OCM课程私聊。
7、Oracle初级入门课程,只教大家最实用+最常用的Oracle操作维护知识。
8、以上所有课程,可以加小麦苗微信(lhrbestxh)或QQ(646634621)详聊,优惠多多。
培训项目
连接地址
DB笔试面试历史连接
http://mp.weixin.qq.com/s/Vm5PqNcDcITkOr9cQg6T7w
OCP培训说明连接
https://mp.weixin.qq.com/s/2cymJ4xiBPtTaHu16HkiuA
OCM培训说明连接
https://mp.weixin.qq.com/s/7-R6Cz8RcJKduVv6YlAxJA
高可用(RAC+DG+OGG)培训说明连接
https://mp.weixin.qq.com/s/4vf042CnOdAD8zDyjUueiw
OCP最新题库解析历史连接(052)
http://mp.weixin.qq.com/s/bUgn4-uciSndji_pUbLZfA
微店地址
https://weidian.com/s/793741433?wfr=c&ifr=shopdetail
● 网名:小麦苗
● QQ:646634621
● QQ群:618766405
● 我的博客:http://blog.itpub.net/26736162/abstract/1/
● 微信公众号:xiaomaimiaolhr,二维码如下:
● 小麦苗的微信二维码如下所示,加我时请备注相关信息:
● 我的微店地址:https://weidian.com/s/793741433?wfr=c&ifr=shopdetail
● 出版的数据库类丛书:http://blog.itpub.net/26736162/viewspace-2142121/
● 博客链接:http://blog.itpub.net/26736162/abstract/1/
● 小麦苗课堂资料(视频+讲课资料):https://share.weiyun.com/5fAdN5m
7、Oracle初级入门课程,只教大家最实用+最常用的Oracle操作维护知识。
About Me
.............................................................................................................................................
● 本文作者:小麦苗,部分内容整理自网络,若有侵权请联系小麦苗删除
● 本文在itpub(http://blog.itpub.net/26736162/abstract/1/)、博客园(http://www.cnblogs.com/lhrbest)和个人微信公众号(xiaomaimiaolhr)上有同步更新
● 本文itpub地址:http://blog.itpub.net/26736162/abstract/1/
● 本文博客园地址:http://www.cnblogs.com/lhrbest
● 本文pdf版、个人简介及小麦苗云盘地址:http://blog.itpub.net/26736162/viewspace-1624453/
● 数据库笔试面试题库及解答:http://blog.itpub.net/26736162/viewspace-2134706/
● DBA宝典今日头条号地址:http://www.toutiao.com/c/user/6401772890/#mid=1564638659405826
.............................................................................................................................................
● QQ群号:230161599(满)、618766405
● 微信群:可加我微信,我拉大家进群,非诚勿扰
● 联系我请加QQ好友(646634621),注明添加缘由
● 于 2018-06-01 06:00 ~ 2018-06-31 24:00 在魔都完成
● 最新修改时间:2018-06-01 06:00 ~ 2018-06-31 24:00
● 文章内容来源于小麦苗的学习笔记,部分整理自网络,若有侵权或不当之处还请谅解
● 版权所有,欢迎分享本文,转载请保留出处
.............................................................................................................................................
● 小麦苗的微店:https://weidian.com/s/793741433?wfr=c&ifr=shopdetail
● 小麦苗出版的数据库类丛书:http://blog.itpub.net/26736162/viewspace-2142121/
● 小麦苗OCP、OCM、高可用网络班:http://blog.itpub.net/26736162/viewspace-2148098/
.............................................................................................................................................
使用微信客户端扫描下面的二维码来关注小麦苗的微信公众号(xiaomaimiaolhr)及QQ群(DBA宝典),学习最实用的数据库技术。



小麦苗的微信公众号 小麦苗的DBA宝典QQ群2 《DBA笔试面试宝典》读者群 小麦苗的微店
.............................................................................................................................................
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/26736162/viewspace-2156459/,如需转载,请注明出处,否则将追究法律责任。