沈阳新东北影城影讯,谁有黄页网址,孕儿美
select *
from table1
where (id in (3,5,1,4,2))
select *
from table1
where (id in (3,5,1,4,2))如果in后面的条件都是数字,那mssql排序应该为
select *
from table1
where (id in (3,5,1,4,2))
order by charindex(',' + convert(nvarchar, id) + ',', ',' + convert(nvarchar, replace('3,5,1,4,2', ' ','')) + ',')
select *
from table1
where (id in (3,5,1,4,2))
order by charindex(',' + convert(nvarchar, id) + ',', ',' + convert(nvarchar, replace('3,5,1,4,2', ' ','')) + ',')改进方法,不去处理空格,直接改用空格判断.可以用来判断少数有空格的字符条件.
select *
from table1
where (id in (3,5,1,4,2))
order by patindex('% ' + convert(nvarchar(4000), id) + ' %', ' ' + convert(nvarchar(4000), replace('3,5,1,4,2', ',',' , ')) + ' ')
select *
from table1
where (id in (3,5,1,4,2))
order by patindex('% ' + convert(nvarchar(4000), id) + ' %', ' ' + convert(nvarchar(4000), replace('3,5,1,4,2', ',',' , ')) + ' ')
其实还是在sql外处理好条件字符串再进行查询和排序比较好.
对于mysql排序可能要改为(mysql不熟):
select *
from table1
where (id in (3,5,1,4,2))
order by find_in_set(id, '3,5,1,4,2')
如对本文有疑问,请在下面进行留言讨论,广大热心网友会与你互动!!
点击进行留言回复
网友评论