SQL多个ORDER BY列按Desc和Asc排序

时间:2015-03-09 03:05:29

标签: mysql sql

这是我到目前为止所尝试的:

 SELECT M.ID, M.NAME, M.SEQ
 FROM M JOIN MCA
 ON M.ID = MCA.M_ID 
 JOIN MC
 ON MCA.CAT_ID = MC._ID
 WHERE MCA.CAT_ID = "
            + inputCategoryID
            + " AND (M.NAME LIKE '"
            + inputSearch.replace("'", "''")
            + "%' OR M.NAME LIKE '%"
            + inputSearch.replace("'", "''")
            + "%' ) AND M.START_DATE <= CURRENT_DATE " +
AND M.EXPIRY_DATE >= CURRENT_DATE " +
ORDER BY M.SEQ DESC, M.NAME ASC

样本结果:

ID     NAME     SEQ
1      Tes1     0
2      Arj2     0
3      Jfa3     1
4      Pof4     0

期望的结果:

 ID     NAME     SEQ
 3      Jfa3     1
 2      Arj2     0
 4      Pof4     0
 1      Tes1     0

但是如果相同的SEQ值(即0,0),它应该按字母顺序显示名称。任何想法如何做到这一点?感谢。

0 个答案:

没有答案