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相同的就按会员时长倒序(时长越长越在前),若会员时长也相同就按更新时间倒序(最新的在前)
在数据库查询时,常常需要排序,而有时排序条件可能有多个。如数据库:
a b
1 103
1 101
2 201
2 203
1 102
2 202
排序后: a b
1 103
1 102
1 101
2 203
2 202
2 201
语句:
SELECT A.a , A.b FROM TABLE A ORDER BY A.a ASC , A.b DESC
其中ASC连接多条排序,且与后一条查询之间有逗号隔开!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)