mysql的orderby可以排序多个。
多个排序语法:
升序:select * from table_name order by 字段1,字段2
降序:select * from table_name order by 字段1 desc,字段2 desc
下面通个一个例子介绍:
有表student,表记录有
当只做age的排序的时候,年龄从大到小的排列
当做age和id排序的时候,先是年龄排序,而同年龄时段的再按id大小排序
mysql的order by可以排序多个,只需在order by 后面的字段用逗号隔开即可,多个排序是有效的。
如果置顶、会员时长、更新时间分别对应了表中的一个字段,那么是可以的
假定这几个字段是
top(是否置顶,1.置顶 0.不置顶)
vipDays 会员时长
updateTime (更新时间)
那么sql可以这么写
select * from table where type=1 order by top desc,vipDays desc,updateTime desc效果就是先top倒序(置顶的在前),top相同的就按会员时长倒序(时长越长越在前),若会员时长也相同就按更新时间倒序(最新的在前)
可以的,order by多个字段规则是这样的,用逗号分隔每一个字段,如果字段不指明排序方式,默认是增序。排序的方法是先按第一个字段排序,如果有相同的再按后续的字段依次排序。
举个例子
按照c1排序的结果如上图,然后我们按照c1增序,c2降序排列,结果如下:
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)