表MSSQL字符串变换之路:从字符串到列表(mssql字符串转列)

MSSQL字符串变换是数据库开发中会普遍遇到的问题,用MSSQL代码进行变换和操作,可以极大地提高编程效率和准确性。例如,我们可以通过MSSQL代码把字符串变成列表。

要实现MSSQL字符串变换成列表,可以采用以下代码来实现:

DECLARE @String varchar(8000)

SET @String = ‘A,B,C,D’

SELECT * FROM [dbo].[SplitString](@String, ‘,’)

GO

其中,SplitString函数是一种可以把一个字符串转换成列表的函数,函数实现代码如下:

CREATE FUNCTION [dbo].[SplitString](@String NVARCHAR(4000), @Delimiter NCHAR(1))

RETURNS @temptable TABLE

(

–返回值

[Name] NVARCHAR(4000)

)

AS

BEGIN

DECLARE @idx INT

DECLARE @slice NVARCHAR(4000)

SELECT @idx = 1

WHILE @idx != 0

BEGIN

SELECT @idx = CHARINDEX(@Delimiter ,@String)

IF @idx != 0

SELECT @slice = LEFT(@String , @idx – 1)

ELSE

SELECT @slice = @String

IF(LEN(@slice)>0)

INSERT INTO @temptable([Name])

VALUES(@slice)

SELECT @String = RIGHT(@String , LEN(@String) – @idx)

END

RETURN

END

运行以上代码后,可以得到的结果是列表的形式:

A

B

C

D

以上,就是MSSQL字符串变换之路:从字符串到列表的方法,使用MSSQL函数可以把字符串上,变成列表形式,从而降低代码的复杂度,提高效率。


数据运维技术 » 表MSSQL字符串变换之路:从字符串到列表(mssql字符串转列)