相关文章推荐
傻傻的地瓜  ·  GoogleCode ...·  1 年前    · 
含蓄的木耳  ·  js ...·  1 年前    · 
没有腹肌的碗  ·  mysql in最大数量-掘金·  1 年前    · 
WHERE `id` IN ( 1 , 7 , 3 , 5 ) ORDER BY `id` DESC 有时以上排序并不能满足我们的需求. 例如, 我们想要按 id 以 5 , 3 , 7 , 1 的顺序排列, 该如何实现. 这也是很多国内外同行经常遇到的问题之一. 下面我们给出按表中某字段, 以我们想要的列表方式排序的解决方案.   用"按字段排序" ( ORDER BY FIELD). ORDER BY FIELD(`id`, 5 , 3 , 7 , 1 ) 要注意的是, FIELD 后面是没有空格的. 因此, 完整的 SQL 为: SELECT * FROM `MyTable` WHERE `id` IN ( 1 , 7 , 3 , 5 ) ORDER BY FIELD(`id`, 5 , 3 , 7 , 1 ) SELECT * FROM `MyTable` WHERE `name` IN ( ' 张三 ' , ' 李四 ' , ' 王五 ' , ' 孙六 ' ) ORDER BY FIELD(`name`, ' 李四 ' , ' 孙六 ' , ' 张三 ' , ' 王五 ' )

Handy MySQL - ORDER BY FIELD

Sort results by order in list