新网创想网站建设,新征程启航

为企业提供网站建设、域名注册、服务器等服务

mysql正序怎么表示 mysql正序与倒序

请问mysql 中 怎么实现这种排序,按照状态排序正序,再按照开始时间排序正序,

有两个思路

创新互联专注于福鼎企业网站建设,成都响应式网站建设公司,购物商城网站建设。福鼎网站建设公司,为福鼎等地区提供建站服务。全流程按需求定制开发,专业设计,全程项目跟踪,创新互联专业和态度为您提供的服务

1、按照各自的活动状态先排序,插入到临时表,最后再union all所有结果集

create temporary table tmp1

select * from tb where 活动状态='筹备中' order by 开始时间;

create temporary table tmp2

select * from tb where 活动状态='进行中' and 开始时间 is not null order by 开始时间;

create temporary table tmp3

select * from tb where 活动状态='进行中' and 开始时间 is null;

create temporary table tmp4

select * from tb where 活动状态='已结束' order by 开始时间 desc;

(select * from tmp1)

union all

(select * from tmp2)

union all

(select * from tmp3)

union all

(select * from tmp4)

2、通过field函数自定义排序

select * from tb order by field(活动状态,'筹备中','进行中','已结束') asc,开始时间 asc;

但这种只能按指定排序,你这种多种排序,有困难。

可以看看上面两种方法结合或许有更好的方法。

MySQL数据库数据怎么实现排序输出?

MySQL中排序输出需要用order by。

如图,test表中有如下数据:

现在分别要求按ID正序和倒序输出结果。

正序:

select * from test order by id;

结果:

倒序:

select * from test order by id desc;

结果:

mysql与sqlserver倒序与正序查询

//搜索前10条记录 

select * from table limit 10 

//倒序排列----以id做排序

select * from table order by id desc 

//正序排列----以id号排序

select * from table order by id asc 

//搜索前10条记录并倒序排列 

select * from table order by id desc limit 10 

//limit 要放在后面


分享名称:mysql正序怎么表示 mysql正序与倒序
文章链接:http://www.wjwzjz.com/article/hghhjo.html
在线咨询
服务热线
服务热线:028-86922220
TOP