掌握 SQL 中的多列排序:升序和降序
SQL 的 ORDER BY
子句是组织表格数据的关键。 但是,如果您需要按多列排序,每列以不同的方向(升序或降序)排序,该怎么办? 本指南向您展示如何操作。
以相反方向对列进行排序
秘诀在于将 ORDER BY
与 DESC
(降序)和 ASC
(升序)关键字结合起来。 语法很简单:
<code class="language-sql">ORDER BY column1 DESC, column2 ASC</code>
此查询按 column1
降序对结果进行排序,然后在每个 column1
组内按 column2
升序排序。
说明性示例
想象一下这张桌子:
Column1 | Column2 |
---|---|
A | 10 |
B | 5 |
C | 15 |
D | 5 |
E | 20 |
要按 Column1
降序排序,然后按 Column2
升序排序,请使用以下查询:
<code class="language-sql">SELECT * FROM table ORDER BY Column1 DESC, Column2 ASC;</code>
输出将是:
Column1 | Column2 |
---|---|
E | 20 |
C | 15 |
B | 5 |
D | 5 |
A | 10 |
注意两阶段排序:Column1
按降序排序(E、C、B、D、A),然后 Column1
中的关系被升序 Column2
打破(20, 15, 5, 5) ,10)。 这种分层方法可以精确控制结果排序。
以上是如何按多列升序和降序对 SQL 结果进行排序?的详细内容。更多信息请关注PHP中文网其他相关文章!