sql-server – 如何按字母顺序排序字符串
发布时间:2020-12-12 16:23:48 所属栏目:MsSql教程 来源:网络整理
导读:我是SQL Server的新手,也是Stack溢出的新手.请原谅我的错误. 是否可以按字母顺序对列中的值进行排序?这是我的桌子 NAME......XZYVWEBACD 我的结果应该如下所示 NAME......VWXYZABCDE 有想法得到这个吗? 解决方法 创建用户定义的标量函数. CREATE FUNCTION d
我是SQL Server的新手,也是Stack溢出的新手.请原谅我的错误.
是否可以按字母顺序对列中的值进行排序?这是我的桌子 NAME ...... XZYVW EBACD 我的结果应该如下所示 NAME ...... VWXYZ ABCDE 有想法得到这个吗? 解决方法创建用户定义的标量函数.CREATE FUNCTION dbo.Alphaorder (@str VARCHAR(50)) returns VARCHAR(50) BEGIN DECLARE @len INT,@cnt INT =1,@str1 VARCHAR(50)='',@output VARCHAR(50)='' SELECT @len = Len(@str) WHILE @cnt <= @len BEGIN SELECT @str1 += Substring(@str,@cnt,1) + ',' SET @cnt+=1 END SELECT @str1 = LEFT(@str1,Len(@str1) - 1) SELECT @output += Sp_data FROM (SELECT Split.a.value('.','VARCHAR(100)') Sp_data FROM (SELECT Cast ('<M>' + Replace(@str1,','</M><M>') + '</M>' AS XML) AS Data) AS A CROSS APPLY Data.nodes ('/M') AS Split(a)) A ORDER BY Sp_data RETURN @output END 结果: SELECT dbo.Alphaorder ('XZYVW') --VWXYZ (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |