关于排序的一段select语句,在线等,急。 老大好,这个语句可以完成,我提问的时候忘了,还有一个排序字段sort,id sort3 04 11 22 35 4我后面加了句",sort asc"不过结果没有按照sort从低到高排 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 用我的数据id sort1 02 13 2当id=2的时候,结果为id sort2 11 03 2当id=3的时候,结果为id sort3 21 02 1我想要的结果就是,等于id的那个排前面,然后再按sort升序排序。 你已经根据你的ID排序了第二个sort字段的升序只会在ID字段相同的情况下生效也就是如果有N个字段排序,第N个排序生效的条件是前面N-1个字段都相同 ORDER BY IF(ID=4,-100,sort) asc如果sort有值小于 - 100 那就不行 \不行,这样会将sort最小的那个(0),排在前面,然后再将等于id那个排第二,剩下的按sort升序排。 这是原始数据如果用SELECT * FROM cata ORDER BY IF(c_id=4,0,c_id) ASC,得出的结果就是如果用SELECT * FROM cata ORDER BY IF(c_id=4,0,c_sort) ASC,得出的结果就是 ID ID11 02 13 24 35 46 5ORDER BY IIF(ID=3,-1,ID1)orderID ID ID1bbbb 3 2aaaa 1 0aaaa 2 1bbbb 4 3bbbb 5 4bbbb 6 5 用我的数据id sort1 02 13 2当id=2的时候,结果为id sort2 11 03 2当id=3的时候,结果为id sort3 21 02 1我想要的结果就是,等于id的那个排前面,然后再按sort升序排序。order by id=3 desc,id; 用我的数据id sort1 02 13 2当id=2的时候,结果为id sort2 11 03 2当id=3的时候,结果为id sort3 21 02 1我想要的结果就是,等于id的那个排前面,然后再按sort升序排序。order by id=3 desc,id;非常感谢,就是这个,可能之前没有说得清楚,所以让回答的朋友产生了误解,特别感谢wwwwb的耐心回答,学到了用if,哦,这里说下可能是wwwwb多打了一个“I”应该不是“IIF”,是"IF"吧,也谢谢benluobobo的回答。 出错了,mysql 在两台计算机上实现数据同步。(主从模式) 关于MYSQL结果集 原有的数据表结构不符合要求,我又不想重构数据表,我该怎么办? Range check error mysql有全局临时表吗? MySQL下如何得到网络上远程计算机的磁盘空间信息? 关于按字母排序 百度地图的供应商为Mapbar,该纠偏同样适用于Mapbar么 关于一个搜索的问题。 MYSQL 内存占用率居高不下 wamp mysql服务启动不了? 把sqlserver的脚本 改成mysql的
id sort
1 0
2 1
3 2当id=2的时候,结果为
id sort
2 1
1 0
3 2当id=3的时候,结果为
id sort
3 2
1 0
2 1我想要的结果就是,等于id的那个排前面,然后再按sort升序排序。
ORDER BY IF(ID=4,-100,sort) asc如果sort有值小于 - 100 那就不行
这是原始数据如果用
SELECT * FROM cata ORDER BY IF(c_id=4,0,c_id) ASC,得出的结果就是如果用
SELECT * FROM cata ORDER BY IF(c_id=4,0,c_sort) ASC,得出的结果就是
1 0
2 1
3 2
4 3
5 4
6 5ORDER BY IIF(ID=3,-1,ID1)orderID ID ID1
bbbb 3 2
aaaa 1 0
aaaa 2 1
bbbb 4 3
bbbb 5 4
bbbb 6 5
id sort
1 0
2 1
3 2当id=2的时候,结果为
id sort
2 1
1 0
3 2当id=3的时候,结果为
id sort
3 2
1 0
2 1我想要的结果就是,等于id的那个排前面,然后再按sort升序排序。order by id=3 desc,id;
id sort
1 0
2 1
3 2当id=2的时候,结果为
id sort
2 1
1 0
3 2当id=3的时候,结果为
id sort
3 2
1 0
2 1我想要的结果就是,等于id的那个排前面,然后再按sort升序排序。order by id=3 desc,id;非常感谢,就是这个,可能之前没有说得清楚,所以让回答的朋友产生了误解,特别感谢wwwwb的耐心回答,学到了用if,哦,这里说下可能是wwwwb多打了一个“I”应该不是“IIF”,是"IF"吧,也谢谢benluobobo的回答。