在SQL Server中,字符串截取函数主要有以下几种:
- declare @str varchar(50)
- set @str='abcdeBeforefghjkAfter'
- select case when @str like '%Before%' then substring(@str,1,CHARINDEX('Before',@str)-2) else @str end ---截取Before前的字符串
- select case when @str like '%Before%' then substring(@str,CHARINDEX('Before',@str)+6,len(@str)+6-CHARINDEX('Before',@str)) else null end---截取Before后的字符串
复制代码
- LEFT(string, length):
- 返回字符串左侧的指定数目的字符。
- 示例:LEFT('abcdef', 3) 返回 'abc'。
- RIGHT(string, length):
- 返回字符串右侧的指定数目的字符。
- 示例:RIGHT('abcdef', 3) 返回 'def'。
- LEN(string):
- 返回字符串的长度(以字符为单位)。
- 示例:LEN('abcdef') 返回 6。
- PATINDEX(pattern, string):
- 返回字符串中指定模式第一次出现的位置。
- 示例:PATINDEX('%[^a]%', 'abcdef') 返回 1,因为b是第一个非a字符。
- REPLACE(string, old_value, new_value):
- 返回一个新字符串,此中所有old_value都替换为new_value。
- 示例:REPLACE('abcdef', 'b', 'x') 返回 acxdef。
- STUFF(string, start, length, replacement):
- 从字符串的指定位置开始,删除指定数目的字符,并替换为新的字符串。
- 示例:STUFF('abcdef', 1, 3, 'xxx') 返回 xxxef。
- SUBSTRING(string, start, length):
- 从字符串的指定位置开始,返回指定数目的字符。
- 示例:SUBSTRING('abcdef', 1, 3) 返回 abc。
- TRIM(string):
- 返归去除字符串两侧空格的字符串。
- 示例:TRIM(' abc ') 返回 abc。
- UPPER(string):
- 返回字符串的所有字符的大写形式。
- 示例:UPPER('abc') 返回 ABC。
- LOWER(string):
- 返回字符串的所有字符的小写形式。
- 示例:LOWER('ABC') 返回 abc。
这些函数可以资助您在SQL Server中处理和操作字符串数据。根据您的具体需求,您可以选择合适的函数来完成字符串截取和转换任务。
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。 |