sql - 如何在sql中使用2列排序
问题描述
这是示例表
name | group
a | 2
b | 1
c | 1
d | 2
e | 4
f | 3
g | 4
如何对名称为 asc 的数据进行排序,并将 asc 分组,如下表所示
name | group
a | 2
d | 2
b | 1
c | 1
e | 4
g | 4
f | 3
我已经尝试过
select * from table order by name asc, group asc
结果并不像我的预期
解决方案
我想你想要:
SELECT *
FROM yourTable
ORDER BY "group" DESC, name;
也就是说,您要先按列降序排序,然后group
按列升序name
排序。请注意,默认排序顺序是升序,所以通常我们不写ASC
. 此外,GROUP
是一个保留的 SQL 关键字,您应该避免使用此名称命名您的列。
推荐阅读
- python - TypeError:使用 FastText 模型时,'NoneType' 对象在 Flask 中不可下标
- c++ - 在“has-a”关系中包含多个子类
- python - Linux上的Sapi5?
- r - R data.table 测试列索引向量的行相等性
- arrays - Postgres jsonb 数组连接
- javascript - 操作完成后杀死所有节点集群工作人员
- javascript - 复制多个文本字段
- cmake - 通过 CMake 构建 rust 库并将其用作导入的库目标
- python - Pycharm 中的 tkinter(python 版本 3.8.6)
- video - gstreamer 的 appsink 元素可以返回原始 rtp 时间戳吗?