sql - 范围值 SQL

标签 sql postgresql range

我有一列的值从“10000023”到“50000000”,我需要为从 10000023 到 10000023+500 的每一行创建第二列,然后继续。

例如。

Pos       |   Interval_pos

10000023     100000523
10000523     100001023
 ...            ...
49999500     50000000

有什么办法吗?

最佳答案

使用generate_series():

select pos, pos + 500
from (select generate_series(minpos, maxpos - 500, 500) as pos
      from (select min(pos) as minpos, max(pos) as maxpost
            from t
           ) t
     ) t

关于sql - 范围值 SQL,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38953700/

相关文章:

css - 范围输入拇指随时间偏移

mysql - 如何以兼容的方式定义日期间隔?

java - 如何手动添加 jlabels 到滚动 Pane ?

sql - postgresql 在时间范围内搜索

postgresql - pg_dump/pg_restore lc_collat​​e English_United States.1252 Windows Linux 迁移

python-3.x - PyCharm 对 `range()` 不满意

ruby - array[1..-2] 是什么意思?

MYSQL:在 CONCAT() 函数中使用列名给出语法错误 1064

mysql - 立即获取授权用户mysql

postgresql - Hibernate 在尝试使用生成的 UUID 保留 DTO 时不断询问 hibernate_sequence