MySQL中的field()函数,可以用来对SQL中查询结果集进行指定顺序排序。
具体用法如下:
order by(field_name,'str1','str2','str3') str1,str2,str3
ps:str4是在结果集,其中field_name指的是字段名字,字段field_name按照字符串str1,str2,str3,str4的顺序返回查询到的结果集。
如果表中field_name字段值不存在于str1,str2,str3,str4中的记录,放在结果集最前面返回。
eg:
1:按照'6','7' 来排序,sql语句如下:
SELECT `ta_id`,`name` FROM `ad` ORDER BY field(ta_id,'6','7') ;
注意:不在6,7中的内容,放在最前面返回;str值相同按主键顺序排列
2.要是想不在6,7中的内容放在最后面,sql如下
SELECT `ta_id`,`name` FROM `ad` ORDER BY field(ta_id,'6','7') desc ;