关于Select Where In 的排序问题

2016-02-19 10:52 137 1 收藏

get新技能是需要付出行动的,即使看得再多也还是要动手试一试。今天图老师小编跟大家分享的是关于Select Where In 的排序问题,一起来学习了解下吧!

【 tulaoshi.com - 编程语言 】


代码如下:

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') 

来源:http://www.tulaoshi.com/n/20160219/1595980.html

延伸阅读
标签: Web开发
jquery使select选中: 用$("#select").attr('value','2');时firefox可以,但ie6不可以 改用$("#select").val('2'),两者都可以了,而且更简洁 自己的理解:value不是select的正规属性,这个value存在于option里,所以第一句在兼容上有点问题
标签: 育儿知识
新生的男宝宝都会有包皮过长的现象,它能起到保护生殖器的作用。在易发尿布疹等皮肤感染的周岁内,还能保护娇嫩的龟头不直接受到伤害。 *有人说应该早为宝宝上翻包皮,有人又说这样不好。究竟该不该帮宝宝上翻包皮? 这时宝宝的包皮和龟头还是粘连在一起的,尽管上翻是可以实现和操作的。不过,一旦翻开,如果不每天翻动的话,没有几天它们还...
标签: 电脑入门
◆什么是 DivX? DivX 是一种视频编码格式的专利技术。使用这种格式的内容可通过互联网获得。如果系统上安装了合适的 DivX 解码器,NVDVD 2.0 就可以播放 DivX 内容。 ◆什么是交错内容? 交错内容将一张视频图像显示为两个分开的场。第一个场隔行显示图像,第二个场稍后显示,两场画面交织而构成一幅完整的图像。这与常规电视的工作方式匹...
标签: 宝宝睡眠
16个关于宝宝睡眠的问题 关于宝宝睡觉,妈妈们的问题一定很多,比如宝宝趴着睡好不好,爱出汗怎么办,打呼噜有什么办法治等,下面我们就来一一解答。 睡眠对于宝宝的成长来说非常重要,因为人的生长激素只有在睡眠中才能得到大量激发,所以宝宝的生长有赖于良好的睡眠,而睡眠时间的长短、睡眠质量等也关系到宝宝的生长发育。 ●趴着睡 宝...
标签: Web开发
页面中有一个select元素,id为customer,在网上好多的介绍jquery引用select的选中值的方法都是用: 代码如下: $("#customer option[selected]").val(); 这个方法来得到selcte选中项的值。我也是一直是这么用,不过最近安装了FF3.5正式版,发现这种方法在它下面得不到值,就去看jquery的帮助文档,在文档中对select选中的引用是用如下方法...

经验教程

531

收藏

76
微博分享 QQ分享 QQ空间 手机页面 收藏网站 回到头部