Mysql-按照in里面的顺序进行排序

平常学习

今天工做遇到个问题,上级给我个excel,大概有1000行,有一个code列,要我更新里面列A和列B的值。我一想,这能够用in函数解决。立刻打开Navicat,一波操做猛如虎,把最新的的数据给搞出来了,而后发现一个问题,我要怎么要这个数据更新导excel里面呢?这里但是有1000行数据。。。
假设下面是直接用in查询到的数据:web

select code,A,B from test where code in(2,6,1,9,3);
code A B
3 4 0
2 6 7
6 8 2
9 4 5
1 2 6

发现一个问题,我想要的是2,6,1,9,3的顺序,怎么变成3,2,6,9,1了!!!
这时候就百度了,看了多篇不堪入目的解释后,终于找到了答案。要用到field函数
函数格式order by field(str,str1,str2,str3...)
str为字段,str1\str2\str3为具体的列值
不明白???
看代码:bash

select code,A,B from test where code in(2,6,1,9,3) order by field(code,2,6,1,9,3);

这样就能够按照2,6,1,9,3的顺序获得想要的结果了,而后就是复制粘贴了!!!svg

总结:

field函数能够指定顺序进行排序。