MySQL可以通过field()函数自定义排序,格式:field(value,str1,str2,str3,str4),value与str1.str2.str3.str4比较,返回1.2.3.4,如遇到null或者不在列表中的数据则返回0. mysql> select * from driver_log order by field(name,'Suzi','Ben','Henry'); +--------+-------+------------+-------+ | rec_id | nam…
mysql 自定义排序顺序 实例如:在sql语句中加入ORDER BY FIELD(status,3,4,0,2,1)语句可定义排序顺序 SELECT tsdvoucher0_.VOUCHER_ID AS VOUCHER1_0_, tsdvoucher0_.COMMENT_DEVICE_TYPE AS COMMENT2_0_, tsdvoucher0_.COMMENT_ID AS COMMENT3_0_, tsdvoucher0_.COMMENT_PERSON_NO AS COMMENT4_0_…
存在表A 按名字倒序排 SELECT * FROM A ORDER BY name DESC 结果如下: 若需要按照王五.张三.李四的顺序排序,使用自定义排序:FIELD() SELECT * FROM A ORDER BY FIELD(name, '王五', '张三', '李四') ASC MySQL中的field()函数,可以用来对SQL中查询结果集进行指定顺序排序 ORDER BY FIELD(field,str1,str2,str3,str4………
sorted()也是一个高阶函数,它可以接收一个比较函数来实现自定义排序,比较函数的定义是,传入两个待比较的元素 x, y,如果 x 应该排在 y 的前面,返回 -1,如果 x 应该排在 y 的后面,返回 1.如果 x 和 y 相等,返回 0. def custom_sort(x,y): if x>y: return -1 if x<y: return 1 return 0 print sorted([2,4,5,7,3],custom_sort) 在python3以后,sort方法和sort…