猿问

按两列排序MySQL表

如何按两列对MySQL表进行排序?


我想要的是按最高评分排序的文章,然后是最近的日期。作为一个例子,这将是一个示例输出(左#是评级,然后是文章标题,然后是文章日期)


50 | 这篇文章摇滚| 2009年2月4日

35 | 这篇文章相当不错 2009年2月1日

5 | 这篇文章并不那么热 2009年1月25日

我正在使用的相关SQL是:


ORDER BY article_rating, article_time DESC

我可以按其中一种排序,但不能同时排序。


温温酱
浏览 569回答 3
3回答

翻阅古今

默认排序是升序,您需要将关键字DESC添加到您的订单:ORDER BY article_rating DESC, article_time DESC

胡说叔叔

ORDER BY article_rating, article_time DESC仅当有两篇具有相同评级的文章时才会按article_time排序。从我在你的例子中可以看到的一切,这正是发生的事情。↓ primary sort                         secondary sort ↓1.  50 | This article rocks          | Feb 4, 2009    3.2.  35 | This article is pretty good | Feb 1, 2009    2.3.  5  | This Article isn't so hot   | Jan 25, 2009   1.但考虑一下:↓ primary sort                         secondary sort ↓1.  50 | This article rocks          | Feb 2, 2009    3.1.  50 | This article rocks, too     | Feb 4, 2009    4.2.  35 | This article is pretty good | Feb 1, 2009    2.3.  5  | This Article isn't so hot   | Jan 25, 2009   1.
随时随地看视频慕课网APP

相关分类

MySQL
我要回答