zoukankan      html  css  js  c++  java
  • SQL截取字符串分隔符中间部门的办法

    需求:实际项目中需要截取第2到第3个逗号中间部分的内容

    方案:

    declare @str nvarchar(50);
    set @str='11,222,3333,44444';
    select @str as '字符串'
    select len(@str) as '字符长度'
    select charindex(',',@str,1) as '第一个逗号的索引值'
    select LEFT(@str,charindex(',',@str,1)-1) as '第一个值'
    select SUBSTRING(@str,charindex(',',@str,1)+1,len(@str)) as '从第一逗号开始截取出后面的字符串'
    select LEFT(SUBSTRING(@str,charindex(',',@str,1)+1,len(@str)),CHARINDEX(',',SUBSTRING(@str,charindex(',',@str,1)+1,len(@str)),1)-1) as '中间的值'
    select SUBSTRING(SUBSTRING(@str,charindex(',',@str,1)+1,len(@str)),charindex(',',SUBSTRING(@str,charindex(',',@str,1)+1,len(@str)),1)+1,len(@str)) as '最后面的值' --从第二个逗号开始截取出其后的字符串
    select LEFT(
    SUBSTRING(SUBSTRING(@str,charindex(',',@str,1)+1,len(@str)),charindex(',',SUBSTRING(@str,charindex(',',@str,1)+1,len(@str)),1)+1,len(SUBSTRING(@str,charindex(',',@str,1)+1,len(@str))))
    ,CHARINDEX(',',SUBSTRING(SUBSTRING(@str,charindex(',',@str,1)+1,len(@str)),charindex(',',SUBSTRING(@str,charindex(',',@str,1)+1,len(@str)),1)+1,len(SUBSTRING(@str,charindex(',',@str,1)+1,len(@str)))),1)-1
    ) as '第二中间的值'

  • 相关阅读:
    周二
    周末
    简单I/O
    格式输出(1)
    c语言—变量
    水仙花数
    控制语句—循环语句
    mysql6数据库安装与配置
    如何解决Tomcat端口号被占用
    eclipse配置tomcat详细步骤
  • 原文地址:https://www.cnblogs.com/johsan/p/7667288.html
Copyright © 2011-2022 走看看