我有以下问题:
现在我有一个包含子网/掩码信息的表(例如 192.168.1.0 / 255.255.255.0 )..但我需要从此子网获取最大和最小 IP:
192.168.1.0 / 192.168.1.255
我找到了这个答案:
如何使用 postgres 查询最小或最大 inet/cidr
但似乎:
network_smaller(inet, inet)和network_larger(inet, inet)
不存在。即使谷歌搜索我也找不到这些功能的任何答案。
谢谢!
编辑:
版本信息:
x86_64-redhat-linux-gnu 上的 PostgreSQL 9.2.15,由 gcc (GCC) 4.8.5 20150623 (Red Hat 4.8.5-4) 编译,64 位
无论如何,我认为这个问题与您的需求无关。那里定义的 min 和 max 类似于用于查找表中最小/最大的SQLmin()和函数,而不是子网中查找最小/最大的。max()
我一般不喜欢依赖未记录的功能。它们可能是安全的,但我一般不喜欢“可能”这个词。
这里有一个记录网络功能的页面: https://www.postgresql.org/docs/current/static/functions-net.html
您需要的两个是:
network(inet) broadcast(inet)这是因为网络名称始终是范围中的“第一个”IP,而广播地址始终是范围中的“最后一个”IP。
| 归档时间: |
|
| 查看次数: |
2813 次 |
| 最近记录: |