postgres新手在这里。
我在表格中有几乎连续的数据 - 例如列数据
SEQ 1 2 4 五 7
我正在尝试编写一个返回缺失序列号的查询 - 例如在这种情况下为3,6。没有多少快乐。任何帮助赞赏。
答案 0 :(得分:2)
您可以使用generate_series
构建完整序列,然后联接回您的表格以过滤掉现有值:
SELECT seq FROM (
SELECT generate_series(MIN(seq), MAX(seq)) FROM t
) s (seq)
LEFT JOIN t USING (seq)
WHERE t.seq IS NULL