sql - 如何比较表中的两行
问题描述
我有一个表名 Meetings 列 Numbers (integer) :
Numbers
1
2
3
14
19
我需要在 Numbers 列上运行,当发现一个或多个数字的差距时,我需要获取该差距的第一个值 - 例如 3,14。最好的方法是什么?一个简单的选择还是我应该使用光标?
解决方案
使用lead()
:
select number
from (select t.*,
lead(number) over (order by number) as next_number
from t
) t
where next_number <> number + 1;
关注微软教程以获取更多信息。
推荐阅读
- wpf - 将 WPF 与 .NET 标准库一起使用
- javascript - 如何在父 div 中间重叠两个具有相对位置的 flexbox 子级?
- python - 如何使用 pgpy 解密消息
- python - Pygame 知道何时按下 shift+other 键
- java - 在集成测试中启动两个 Spring Boot 应用程序
- android - 为什么我通过改造在我的请求中收到“错误请求”
- react-native - 反应本机 FS copyFile() 永远不会解决
- python - Python 将 m4a 文件转换为另一种格式
- node.js - 在集群分叉的一个端口上为每秒 1-3k 个请求启动 http 服务器是一种好习惯吗?
- javascript - 告诉 webpack 一个 3rd 方模块使用 ES Modules