首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 数据库 > SQL Server >

关于自定义函数。解决方法

2013-06-26 
关于自定义函数。现有表ProductInfo,其中有一字段Atrribute,Atrribute的数据值为无规律字符串。现在我想实现

关于自定义函数。
现有表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
 

UPDATE ProductInfo SET Attribute = dbo.fn_GetAttribute(Attribute)
[解决办法]
也可以直接写在select的字段位置

热点排行