关于自定义函数。
现有表ProductInfo,其中有一字段Atrribute,Atrribute的数据值为无规律字符串。现在我想实现的是,把Atrribute的数据值每隔三个字符用逗号隔开。如图所示:
变成
用什么方法可以实现呢?自定函数可以吗?具体怎么实现?求教。 自定义函数
[解决办法]
CREATE FUNCTION fn_GetAttribute(@attribute NVARCHAR(MAX))
RETURNS NVARCHAR(MAX)
AS
BEGIN
DECLARE @output NVARCHAR(MAX) = ''
WHILE LEN(@attribute) > 3
BEGIN
SET @output = @output + SUBSTRING(@attribute,1,3) + ','
SET @attribute = SUBSTRING(@attribute,4,LEN(@attribute) - 3)
END
SET @output = @output + @attribute
RETURN @output
END