zoukankan      html  css  js  c++  java
  • SQL Server通过函数把逗号分隔的字符串拆分成数据列表的脚本-干货


    CREATE FUNCTION [dbo].[Split](@separator VARCHAR(64)=',',@string NVARCHAR(MAX))
      RETURNS @ResultTab TABLE (
         Id    INT ,
         Res     NVARCHAR(500)
     )
     AS
     BEGIN
         DECLARE @Num INT
         IF(@string IS NOT NULL AND @string <> '' AND LEN(@string)>0)
         BEGIN
             IF(CHARINDEX(@separator,@string)>0)        --判断要截取的字符是否存在
             BEGIN
                 SET @Num=0
                 WHILE (CHARINDEX(@separator,@string)>0)        --如果要截取的字符存在,就继续循环
                 BEGIN
                     SET @Num=@Num+1
                     
                     INSERT INTO @ResultTab(Id,Res)        --截取字符串,插入表变量
                     SELECT @Num,LEFT(@string,CHARINDEX(@separator,@string)-1)
                     
                     --把已经截取并插入的字符串删除
                     SET @string=STUFF(@string,1,CHARINDEX(@separator,@string)-1+LEN(@separator),'')    
                 END
                 
                 --如果最后一个截取的字符串为空,那就不插入了
                 --例如:'123,456,789,' 这样的字符串最后剩下的就是空字符串了
                 IF(@string IS NOT NULL AND @string <> '')
                 BEGIN
                     INSERT INTO @ResultTab(Id,Res)
                     SELECT @Num+1,@string
                 END            
             END
             ELSE
             BEGIN
                     INSERT INTO @ResultTab(Id,Res)        --截取字符串,插入表变量
                     SELECT 1,@string
             END
          END
          ELSE
              BEGIN
                 DELETE FROM @ResultTab
              END
         RETURN
     END


  • 相关阅读:
    Powersploit的安装及脚本攻击实战
    Matasploit漏洞利用 之 Samba漏洞利用演示
    Matasploit主机扫描 之 使用nmap扫描
    Matasploit主机扫描 之 使用辅助模块进行服务扫描(以mysql为例)
    Matasploit主机扫描 之 使用辅助模块进行端口扫描
    DVWA 0-14 Writeup
    DVWA-14.4 JavaScript(JS攻击)-Impossible
    《C#高级编程》读书笔记(十五):任务、线程和同步之一 Parallel类
    vs2015 ctrl+shift+F热键冲突
    Entity Framework CodeFirst模式数据迁移
  • 原文地址:https://www.cnblogs.com/hualiuliu/p/11457325.html
Copyright © 2011-2022 走看看