我有一个这样的 SQL 表
name | engins| frank
---------------------------+-------+------
John Smith | 8422| 854
(1 rows)
并且需要进行查询,以便在 engins 超过 2000 时仅返回行 john smith
最佳答案
我会尝试这样的查询(PostgreSQL 8.4+)
WITH TT AS (
SELECT start, stop, LAG(stop) OVER(ORDER BY stop ASC) AS lastStop
FROM yourtable
)
SELECT lastStop as start, start as stop
FROM TT
WHERE lastStop <> start;
LAG() 从上一行中选择值。
关于sql - 使用 SQL 查找缺失的行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4065077/