您好,UncleToo欢迎您!  为了更好的浏览本站,请使用高版本浏览器
RSS  Tag     设为首页 | 加入收藏
 您所在的位置:首页 > 数据库技术 > SQL Server

sqlserver实现字符串从小到大排序

作者:  来源:互联网  日期:2013-11-06 23:12:56
收藏  评论:( 0 )  阅读:492

sqlserver实现字符串从小到大排序:

--字符串排序
declare @a int, @b int, @c int, @d varchar(max), @e varchar(max), @f varchar(max)
set @a=1
set @b=1
set @d='bbdgegpoakfoa'
set @c=LEN(@d)
set @e=SUBSTRING(@d,1,1)
set @f=''
while @b<@c
begin
while @a<LEN(@d)
begin
if  @e>SUBSTRING(@d,@a,1)
set @e=SUBSTRING(@d,@a,1)
set @a=@a+1
end
set @d=stuff(@d,charindex(@e,@d,1),1,'')
set @a=1
set @b=@b+1
set @f=@f+@e
set @e=SUBSTRING(@d,1,1)
end

结果:abbdefggkoop

还有一种方法,通过表的order by,这种方法更好理解

set nocount on
declare @table table(val char(1))
declare @s varchar(8000),@i int
set @s='bbdgegpoakfoa'
set @i=1
while @i<=LEN(@s)
begin
    insert into @table select SUBSTRING(@s,@i,1)
    set @i=@i+1
end
                       
set @s=''
select @s=@s+val from @table order by val
print @s
                       
/*
aabbdefggkoop
*/




除非特别声明,本站所有PHP教程及其他教程/文章均为原创、翻译或网友投稿,版权均归UncleToo中文网所有, 转载请注明作者及出处。
原文网址:http://www.uncletoo.com/html/sqlserver/586.html
读完这篇文章后,你是否有所收获? 分享是一种生活的信念!
  • 0
  • 0
我来说两句
更多>>网友评论