mssql sql 字符串截取实例代码
关于字符串截取我们用substring函数
substring ( expression , start , length ) 返回字符、binary、text 或 image 表达式的一部分。
参数
expression
是字符串、二进制字符串、text、image、列或包含列的表达式。不要使用包含聚合函数的表达式。
start
是一个整数,指定子串的开始位置。
length
是一个整数,指定子串的长度(要返回的字符数或字节数)。
left ( character_expression , integer_expression ) 返回从字符串左边开始指定个数的字符。
参数
character_expression
字符或二进制数据表达式。character_expression 可以是常量、变量或列。character_expression 必须是可以隐式地转换为 varchar 的数据类型。否则,请使用 cast 函数显式转换 character_expression。
integer_expression
是正整数。如果 integer_expression 为负,则返回空字符串。
返回类型
varchar
right ( character_expression , integer_expression ) 返回字符串中从右边开始指定个数的 integer_expression 字符。
参数
character_expression
由字符数据组成的表达式。character_expression 可以是常量、变量,也可以是字符或二进制数据的列。
integer_expression
是起始位置,用正整数表示。如果 integer_expression 是负数,则返回一个错误。
返回类型
varchar
本文介绍了Python操作MYSQL、执行SQL语句、获取结果集、遍历结果集、取得某个字段、获取表字段名、将图片插入数据库、执行事务等各种代码实例和详细介绍,代码居多,是一桌丰盛唯美的代码大餐。如果想查看在线版请访问:https://www.jb51.net/article/34102.htm
0
下面看实例
有一列的值为
title
aaaa,bb,cc
bb,ff,gg
ii
现在想截取成这样
aaaa bb cc
bb ff gg
ii
也就是分成了3个字段了
请根据","来取 因为需求可能会是 要第2个逗号之前且第一个逗号之后的内容
所以根据逗号来判别更好!
if object_id('tempdb..#tb') is not null
drop table #tb
go
create table #tb (title varchar(50))
go
insert into #tb select 'aaaa,bb,cc'
union all select 'bb,ff,gg'
union all select 'ii'
go
select
title1 = parsename(replace(title,',','.'), len(title) - len(replace(title,',',''))+1),
title2 = parsename(replace(title,',','.'), len(title) - len(replace(title,',',''))),
title3 = parsename(replace(title,',','.'), len(title) - len(replace(title,',',''))-1),
title4 = parsename(replace(title,',','.'), len(title) - len(replace(title,',',''))-2)
from #tb
/*
title1 title2 title3 title4
-------------- -------------- -------------- --------------
aaaa bb cc null
bb ff gg null
ii null null null
(3 行受影响)
每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号