select * from sjw_music where music_flag=1 order by music_name desc,music_infoflag asc;
我刚开始以为这样可以,发现不行?
music_name music_flag
3 0
2 1
15 -1
9 0
16 0
8 1假如我按着我的要求从上面获得3条消息,按music_name降序,按music_infoflag 升序
结果应该是下面这样的:
15 -1
3 0
9 0
我刚开始以为这样可以,发现不行?
music_name music_flag
3 0
2 1
15 -1
9 0
16 0
8 1假如我按着我的要求从上面获得3条消息,按music_name降序,按music_infoflag 升序
结果应该是下面这样的:
15 -1
3 0
9 0
order by music_name desc,music_infoflag
先根据music_flag=1过滤结果
然后按music_name desc降序,music_name相同的时候按music_infoflag 升序
order by music_name desc,music_infoflag asc这样的写法是正确的哟,先用music_name降序排列,如果music_name一样的话,用第二排序字段music_infoflag升序排列
不过搂主的结果好像实现不了。
select * from sjw_music where music_flag=1 order by music_infoflag asc, music_name desc;
就能出现
music_name music_infoflag
15 -1
3 0
9 0
这样的效果了
这样的结果是先按music_infoflag 升序,后按按music_name升序排列出来的。.......order by music_infoflag asc,music_name asc;