如何按 A 列排序,然后按 B 列排序?
Posted
技术标签:
【中文标题】如何按 A 列排序,然后按 B 列排序?【英文标题】:How to order by column A and then by column B? 【发布时间】:2010-12-14 12:15:36 【问题描述】:如何编写 SQL 以便结果可以先按 A 列排序,然后按 B 列排序。如下所示:
SELECT * FROM tbl WHERE predictor ORDER by col_A and ORDER by col_B
【问题讨论】:
【参考方案1】:ORDER BY col_A, col_B
SQLite网站有syntax diagrams解释SQLite支持的SQL语法。
【讨论】:
如果我需要 col_A 作为 asc 然后 col_B 作为 desc 可以在每列后面加上asc、desc,例如:ORDER BY col_A asc, col_B desc【参考方案2】:只需将逗号分隔的列列表提供给 ORDER BY:
SELECT * from table WHERE table.foo=bar ORDER BY colA, colB
ORDER BY 子句导致输出 要排序的行。论据 ORDER BY 是一个表达式列表 用作排序的键。这 表达式不必是 简单 SELECT 的结果,但在 一个复合 SELECT 每个排序表达式 必须与结果之一完全匹配 列。每个排序表达式可能是 可选地后跟一个 COLLATE 关键字和排序规则的名称 用于排序文本和/或的函数 关键字 ASC 或 DESC 来指定 排序顺序。
【讨论】:
【参考方案3】:SELECT * FROM tbl WHERE predictor ORDER by col_A, col_B
【讨论】:
以上是关于如何按 A 列排序,然后按 B 列排序?的主要内容,如果未能解决你的问题,请参考以下文章