SqlServer中SubString与CharIndex函数的使用 SubString和CharIndex结合使用

一、CharIndex

1:CharIndex语法:
      CharIndex(expression1,expression2[,start_location])
2:参数
expression1
一个表达式,其中包含要查找的字符的序列。expression1是一个字符串数据类别的表达式。
expression2
一个表达式,通常是一个为指定序列搜索的列。expression2属于字符串数据类别.
start_location
开始在expression2中搜索expression1时的字符位置。如果start_location未被指定、是一个负数或零,则将从espression2的开头开始搜索。start_location可以是bigint类型。
3:返回类型
如果expression2的数据类型为varchar(max),nvarchar(max)或varbinnary(max),则为bigint,否则为int。
4:备注
如果在expression2内找不到expression1,则charindex返回0.
charindex将根据输入的排序规则执行比较操作。若要以指定排序规则进行比较,则可以使用collate将显式排序规则应用于输入值。
返回的开始位置从1开始,而非从0开始。

5:例子

select charindex('A','BADF',1)  :2

select charindex('A','BADF',0)  :2

select charindex('A','BADF',2)  :2

select charindex('A','BADF',3)  :0

select charindex('G','BADF',3)  :0

二、substring

1、语法

substring(expression,start,length);

2、参数

expression

是字符串、二级制字符串、文本、图像、列或包含列的表达式。不要使用包含聚合函数的表达式。

start

指定字符串开始位置的整数。start可以为bigint类型。

length

一个整数,指定要返回的expression的字符数或字节数。如果length为负,则会返回错误。length可以是bigint类型。

3.备注

必须以字符数指定使用ntext、char或varchar数据类型的偏移量(start和length)。必须以字节数指定使用text、image、binary或varbinary等数据类型的偏移量。

4、例子:

select substring('GXS',-1,3) :G

select substring('GXS',-1,2) :NULL

select substring('GXS',0,1)  :NULL

select substring('GXS',1,1)  :G

select substring('GXS',1,2)  :GX

SubString和CharIndex结合使用

 select substring('A,B,C,D',0,charindex(',','A,B,C,D',0))

  • 1
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

下一秒_待续

如有帮到您,给个赞赏(^.^)

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值