SQL Server字符串切割_Mssql数据库教程

编辑Tag赚U币

推荐:解析SqlServer2000获取当前日期及格式
SqlServer2000获取当前日期及日期格式 获取系统日期:GETDATE() 格式化日期: CONVERT(VARCHAR,GETDATE(),20) 或 CONVERT(VARCHAR(20),GETDATE(),120) 注:20表示20位,日期格式为:yyyy-mm-ddhh:mm:ss 改用10,日期格式为:yyyy-mm-dd selectGETDATE() selec

  1. CREATE FUNCTION fGetStrBySplit  
  2.  ( 
  3.      @Source VARCHAR(max), 
  4.      @Index INT
  5.      @SplitChar VARCHAR(1) 
  6.  ) 
  7.  RETURNS varchar(MAX
  8.  AS 
  9.  BEGIN 
  10.       
  11.      DECLARE @Len INT 
  12.      DECLARE @n INT = 0 
  13.      DECLARE @ChIndex INT 
  14.      DECLARE @Result VARCHAR(MAX
  15.      --获取总长度 
  16.      SET @Len = LEN(@Source)     
  17.      --获取切割字符位置 
  18.      SET @ChIndex = CHARINDEX(@SplitChar,@Source) 
  19.   
  20.      WHILE @ChIndex > 0 
  21.      BEGIN 
  22.          IF(@n = @Index
  23.          BEGIN 
  24.              SET @Source = SUBSTRING(@Source,0,@ChIndex) 
  25.              BREAK 
  26.          END 
  27.   
  28.          SET @Source = SUBSTRING(@Source,@ChIndex+1,@Len) 
  29.          SET @ChIndex = CHARINDEX(@SplitChar,@Source) 
  30.           
  31.          SET @Len = LEN(@Source) 
  32.          SET @n = @n + 1 
  33.           
  34.      END 
  35.       
  36.      RETURN @Source 
  37.  END 
  38.  GO 
  39.   
  40.  --调用  
  41.  DECLARE @value VARCHAR(max
  42.  SET @value = dbo.fGetStrBySplit('645002*01_45854_183677_12',0,'_'
  43.  PRINT @value 
结果:
645002*01
--1
45854
--2
183677 

分享:解读SQL Server查询含有单引号数据的方法
SQLServer查询含有单引号的字段可以用如下SQL语句加以实现: select字段列表from表名where字段名like’%’+char(39)+’%’

来源:未知//所属分类:Mssql数据库教程/更新时间:2012-07-20
相关Mssql数据库教程