SQL Server函数(一)--字符串截取

打印 上一主题 下一主题

主题 916|帖子 916|积分 2748

在SQL Server中,字符串截取函数主要有以下几种:
  1. declare @str varchar(50)
  2. set @str='abcdeBeforefghjkAfter'
  3. select case when @str like '%Before%' then substring(@str,1,CHARINDEX('Before',@str)-2) else @str end ---截取Before前的字符串
  4. 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企服之家,中国第一个企服评测及商务社交产业平台。
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

道家人

金牌会员
这个人很懒什么都没写!

标签云

快速回复 返回顶部 返回列表