将字符串中的所有字符转换为ASCII码

IF OBJECT_ID('dbo.Fun_String2ASCII') IS NOT NULL
	DROP FUNCTION dbo.Fun_String2ASCII
GO
-- =============================================
-- Author:		yenange
-- Create date: 2018-06-07
-- Description:	将字符串中的所有字符转换为ASCII码,并用逗号连接
-- =============================================
CREATE FUNCTION dbo.Fun_String2ASCII
(
	@str NVARCHAR(MAX)
)
RETURNS NVARCHAR(MAX)
AS
BEGIN
	DECLARE @r NVARCHAR(MAX),@s NCHAR(1)
	
	IF ISNULL(@str,'')=''
		RETURN @r;
	
	SET @r=''
	
	WHILE LEN(@str)>0
	BEGIN
		SET @s=LEFT(@str,1);
		SET @str=SUBSTRING(@str,2,LEN(@str)-1);
		
		SET @r=@r+RTRIM(ASCII(@s))+','; 
	END

	SET @r=SUBSTRING(@r,1,LEN(@r)-1)

	RETURN @r
END
GO

SELECT dbo.Fun_String2ASCII('	12345
') AS r
/*
r
9,49,50,51,52,53,13,10
*/


猜你喜欢

转载自blog.csdn.net/yenange/article/details/80610630