日期:2014-05-19  浏览次数:20726 次

sql语句中排序时怎么同时满足两个条件
大家好 我想问一下可不可能sql的wher条件中排序同时满足两个条件,
像这样不是我要的order by movie.ptoptimes desc , movie.commendtimes desc
这样还是有先后顺序,

------解决方案--------------------
肯定有先后顺序啊,没有先后那叫什么排序。
------解决方案--------------------

A B
1 3
2 2
3 1 

select * from (select * from 表 order by A ) order by B

如果是俩个不同表的字段合并 加上 UNION ALL 

------解决方案--------------------
可以试试将两个字段的值保存到一个临时字段 在排序
------解决方案--------------------
两个字段同时排序,如4L的例子,LZ希望得到什么结果?
A B
1 3
2 2
3 1

要么经过某种算法,把两个字段合并成一个字段排序,要么就必然后先后顺序
LZ可以试着把它们合并成一个字符串来排序
order by to_char(movie.ptoptimes, 'yyyymmdd') || to_char(movie.commendtimes, 'yyyymmdd') desc
 
------解决方案--------------------
探讨

A B
3 3
2 2
1 1
这是想要的,不过像6楼的那个会报to_char 的错误吧。