network()
是一个系统函数,它以 cidr
格式返回提供的 IP 地址的网络部分,即地址的网络掩码覆盖的范围内的最低地址。
network()
添加于 PostgreSQL 6.4。
用法
network ( inet ) → cidr
network()
在功能上等效于将 inet
值转换为 cidr
。
如果提供了无效值,则会引发 ERROR
。
更改历史记录
- PostgreSQL 6.4
- 添加 (提交 33c4072d)
示例
network()
的基本用法示例
postgres=# SELECT network('192.168.1.2/32'); network ---------------- 192.168.1.2/32 (1 row) postgres=# SELECT network('192.168.1.2/24'); network ---------------- 192.168.1.0/24 (1 row) postgres=# SELECT network('192.168.1.2/16'); network ---------------- 192.168.0.0/16 (1 row)
通过将 inet
值转换为 cidr
可以实现相同的结果
postgres=# SELECT '192.168.1.2/16'::inet::cidr; cidr ---------------- 192.168.0.0/16 (1 row)
参考
- PostgreSQL 文档: IP 地址函数