【发布时间】:2020-12-15 14:59:21
【问题描述】:
我有如下数据:
addr
10.0.0.0/32
10.0.0.1/32
10.0.0.2/32
10.0.0.3/32
10.0.0.4/32
10.0.0.5/32
10.0.0.6/32
10.0.0.7/32
我想做这样的事情:
select agg_inets(addr) as supernets from addr_table
然后得到:
supernets
10.0.0.0/29
在另一个示例中,数据可能不包含连续地址,在这种情况下,我希望获取 CIDR 范围的记录集:
addr
10.0.0.0/32
10.0.0.4/32
10.0.0.5/32
10.0.0.6/32
10.0.0.7/32
结果:
10.0.0.0/32
10.0.0.4/30
似乎没有任何内置函数可以实现这一点。我还有其他选择吗?
【问题讨论】:
标签: sql postgresql aggregate-functions