SQL中多条件排序问题

2024-12-20 21:57:01
推荐回答(3个)
回答1:

第一步:确定输出内容,你要的字段为name,数据结果为b,d,a,c ;

第二步:找规律,b、d的online为1;a、c的位说明是按online 降序;然后来看下 b 、d的online相同,viewnum为30和10,那么就是viewnum降序;如果a、c的viewnum也是降序那么规律就找到了,发现 a为40、c为20,确实是降序,满足条件。

第三步:总结规律就是先按online降序排序,之后再按viewnum降序排序。

第四步:得出需要的sql。

select name  from  tablename order by online desc, viewnum  desc ;

回答2:

order by后边的字段并不是唯一的,支持多个,按照你排序的先后顺序写就可以了。另外按照每个字段的升序和降序同样支持。默认是升序的。如下
order by column1(asc or desc),column2(asc or desc),column3(asc or desc),column4(asc or desc)...

回答3:

order by online desc,viewnum desc