sql - 按一对值对列进行排序
问题描述
我有 2 个简单的列:一列只是一个 ID 列,另一列是某种布尔类型的列。
ID V
0 1
1 0
2 0
3 1
4 1
5 0
我想按列 V 的一对值 (0,1) 对行进行排序(同时仍使 ID 尽可能小):
ID V
1 0
0 1
2 0
3 1
5 0
4 1
我怎么做 ?
解决方案
似乎您想依次获取 0 和 1 的行:
select id, v
from tab
order by
row_number()
over (partition by v
order by id)
,v
推荐阅读
- html - 不同的页面模板未在 WordPress 中显示内容
- python - /help() 函数不返回用户定义函数的文档字符串
- python - 如何使用 patch() 模拟返回值的属性和属性
- powerbi - DAX 测量计算一年滑动窗口内新购买客户的百分比
- laravel - 当我重新加载页面以将 csv 文件插入 laravel 中的数据库时如何防止重复
- python - 对dict的操作无效
- r - 将列表中的字符串值应用于默认的 drc 函数
- java - 使用 FixedThreadPool 的嵌套执行器
- r - 将 dgCMatrix 转换为逻辑矩阵
- angular - 如何设置从数据库中检索到的行为主体初始值?