Sign-up....

求按集合排序的sql语句怎么写?

未排序的是

sql="select userid,username from users where userid in(12,4,2,9)";

现在要求搜索结果按筛选条件中的userid的顺序12,4,2,9排序该如何做?

比如结果为: (按给定的userid顺序排列)

12 Jack

4 Marry

2 Jone

9 Mike

[183 byte] By [msdn] at [2007-10-1 16:51:02]
# 1 Re: 求按集合排序的sql语句怎么写?

求高手!

apengcn at 2005-6-28 15:55:15 >
# 2 Re: 求按集合排序的sql语句怎么写?

select userid,username from users where userid in(12,4,2,9)

Order By CharIndex(','+Rtrim(userid)+',',','+'12,4,2,9'+',')

paoluo at 2005-6-28 16:08:30 >
# 3 Re: 求按集合排序的sql语句怎么写?

为什么要那么多“ ',',','”,能解释一下吗?兄台

apengcn at 2005-6-28 17:17:08 >
# 4 Re: 求按集合排序的sql语句怎么写?
加那么多','的原因是,查询的时候就是这么查询的

,2, 在 ,12,4,2,9, 中的位置,

如果是直接查询

2 在 12,4,2,9中的位置,就会查询错误。

paoluo at 2005-06-30 09:31:00 >

MS-SQL Server

All Classified